/* 错误,特化版本不能放在前面
template<>const char * max_data(const char *&a, const char *&b)
{
return strcmp(a, b) > 0 ? a : b;
}
*/
template<typename T> T max_data(T &a, T &b)
{
return a > b ? a : b;
}
template<>const char * max_data(const char *&a, const char *&b)
{
return strcmp(a, b) > 0 ? a : b;
}