テンプレートを複数回定義せずに、テンプレートクラスの複数の機能を実装できるかどうか疑問に思っています。
宣言:
template <class T>
class Test{
private:
T field;
public:
Test(T value);
T& get();
void set(T value);
};
実装:
template <class T> Test<T>::Test(T value){ set(value); }
template <class T> T& Test<T>::get(){ return field; }
template <class T> void Test<T>::set(T value){ field = value; }
複数回コピーtemplate <class T>
すると、エラーが発生しやすくなります。私はこのようなことができるかどうか疑問に思います:
template <class T>{
Test<T>::Test(T value){ set(value); }
T& Test<T>::get(){ return field; }
void Test<T>::set(T value){ field = value; }
}
どんな助けでも大歓迎です。