【发布时间】:2017-03-25 06:52:54
【问题描述】:
就我的理解而言,我只想为以下类限制 2 种类型 int 和 string,就像在 java 模板定义中使用扩展一样。
template<typename T>
typename std::enable_if<std::is_same<T,int>::value || std::is_same<T,string>::value>::type
class ExchangeSort
{
public:
void bubbleSort(T buffer[], int s);
void print(T buffer[], int s);
void bubbleSort(const vector<T>& vec);
};
但是如果我像下面这样实例化
ExchangeSort<int>* sortArray = new ExchangeSort<int>;
我收到上述行 ExchangeSort 未定义的错误。有什么问题?
【问题讨论】:
标签: c++ templates visual-c++