改天,另一个模板元编程实验出错了。我正在尝试制作一个is_greater_than
模板,该模板将采用两个整数值N
和M
type T
。
template<typename T, T N, T M>
struct is_greater_than<void, N, M>;
template<typename T = std::enable_if<std::is_integral<T>::value, T>::value, T N, T M>
struct is_greater_than<T, N, M>
{
static const bool value = N > M;
};
尽我所能,我似乎无法让它发挥作用。尝试编译它会产生 112 个编译器错误。我在这里有一个 ideone 小提琴:http: //ideone.com/ch1j7b。
我在这里做错了什么?任何帮助,将不胜感激!