【发布时间】:2012-06-28 10:15:05
【问题描述】:
我想要一个自定义方法 - 我将调用 MyMethod - 在模板类中 - 我将调用 Foo - 仅当 Foo 已使用某些模板参数类型实例化时(例如,当 A 为 int 且 B 为 string 时) ,否则,我不希望 MyMethod 存在于任何其他可能的 Foo 实例上。
这可能吗?
例子:
template<class A, class B>
class Foo
{
string MyMethod(whatever...);
}
boost:enable_if 能帮上忙吗?
谢谢!!
【问题讨论】:
-
如果您使用的是 C++11,还有
std::enable_if。你应该看看 SFINAE。 en.cppreference.com/w/cpp/types/enable_if
标签: c++ templates boost enable-if