Явная специализация в классе
Как сделать, чтобы этот код, работающий в MSVS, заработал на g++?
template <class A, const int options=1>
class B{
A a;
B(){
Init<options>();
}
template <int option> void Init();
template<> void Init<0>(){}
template<> void Init<1>(){ a.key=1; }
};
Источник: Stack Overflow на русском