Thanks for the reply. I wonder are there any alternatives to achieve similar things for built-in types? I think this is very helpful for template function for built-in types.