我的代码中出现以下错误。我对C ++很生疏,不知道我做错了什么。
错误讯息:
Error: Field has incompatible type 'int []'
代码:
template<typename Comparable> class OrderedCollection
{
private:
Comparable data[]; //ERROR CAUSED BY THIS LINE
int _size;
int _current;
const int MAX_SIZE = 100;
答案 0 :(得分:2)
可能的解决方法是使用第二个接受size_t的模板参数。
template<typename Comparable, size_t MAX_SIZE = 100> class OrderedCollection
{
private:
Comparable data[MAX_SIZE]; //Error should be gone
int _size;
int _current;
答案 1 :(得分:1)
您需要指定const
数组大小,必须在编译时知道数组大小。
这样的事情应该解决:
Comparable data[MAX_SIZE];