クラスが特定のタイプの場合、Print 関数を特殊化する必要があるサンプル クラスがあります。しかし、これはまったくコンパイルされません。
template <typename classType, int size>
class MyVector
{
public:
classType* innerArray;
MyVector(){innerArray = new classType[size];}
~MyVector(){delete[] innerArray;}
void push_back(classType val)
{
innerArray[0] = val;
}
classType& operator[](int index)
{
assert(index >= 0);
return innerArray[index];
}
void Print() {
cout << "Printing Normal" << endl;
}
};
void MyVector<double>::Print()
{
cout << "Printing Double" << endl;
}