メンバー関数テンプレートの次の特殊化は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>();
}