【发布时间】:2020-02-16 11:26:10
【问题描述】:
如果第二个模板实例化,如何防止下面的第一个模板实例化? (即如果 static_cast<T>(0) 和 T::zero() 都被定义)
template<typename T>
auto zero() ->decltype(static_cast<T>(0)) {
return static_cast<T>(0);
}
template<typename T>
auto zero() ->decltype(T::zero()) {
return T::zero();
}
【问题讨论】:
标签: c++ templates c++14 sfinae