成员函数模板的以下特化是否bar
有效?它在 gcc 4.5.3 和 VS .NET 2008 上编译。我很困惑,因为我隐约记得读过函数模板不能被专门化。
struct Foo
{
template<typename T>
void bar();
};
template<typename T>
void Foo::bar(){}
template<>
void Foo::bar<bool>(){}
int main()
{
Foo f;
f.bar<char>();
f.bar<bool>();
}