Является ли следующая специализация шаблоном функции-члена 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>();
}