#include <iostream>
// 模板的实现方式:宏
// max_char,max_int,max_double
#define MAX(T) T max_##T(T x, T y) { \
return((x > y) ? (x) : (y)); \
}
MAX(char)
MAX(int)
MAX(double)
#define Max(T) max_##T
void MAXTest(void) {
std::cout << Max(char)('a', 'e') << std::endl;
std::cout << Max(int)(10, 20) << std::endl;
std::cout << Max(double)(1.1, 2.2) << std::endl;
}
运行效果