Eu tenho uma classe modelo que tem uma função ( myfunc()
) que faz o mesmo em todos os casos, T
exceto em alguns casos (por exemplo, bool
). Eu tenho uma solução funcional, com base nesta pergunta :
template <class T> class opt_arg{
private: void myfunc(){
/*Do generic stuff */
}
/* Can I insert here the bool specialization? */
};
/* The specialization "inserted outside of the class body": */
template<>
inline void opt_arg<bool>::myfunc(){
/* Do bool specific stuff*/
}
Como mencionei, está funcionando bem. Só estou pensando, posso inserir a especialização de função dentro do "corpo da classe"?