什麼是調用模板類型的成員函數的好方法?以下foo()
代碼是否僅針對定義了bla()
函數的類型進行編譯?具有特定成員方法的C++模板類型
class A { void bla(); };
template<typename T>
void foo() {
T t;
t.bla();
}
int main() {
foo<A>();
return 0;
}
我可以使用boost::enable_if
只定義此功能對於具有bla()
方法類型?如果是的話,那是個好主意嗎?我想象「概念」(我一無所知)的想法可能是需要在這裏使用的。