gpt4 book ai didi

c++ - 类型未声明错误

转载 作者:行者123 更新时间:2023-11-28 03:30:16 25 4
gpt4 key购买 nike

我收到一条错误消息,提示“T”未命名类型。我对这意味着什么感到困惑。我以为我在类里面宣布它说 Virtual T?

template <class T>
class ABList : public ABCList<T> {
private:
T a [LIST_MAX];
int size;

public:
ABList ();

virtual bool isEmpty ();
virtual int getLength ();
virtual void insert (int pos, T item);
virtual T remove (int pos);
virtual T retrieve (int pos);
};

.

T  ABList::retrieve (int pos) throw (ListException)
{
if (pos <= 0 || pos >= count)
throw new ListException();
return item[pos – 1];
}

最佳答案

你必须这样写:

template<typename T>
T ABList<T>::retrieve (int pos) throw (ListException)
{
//...
}

因为 ABList 是一个类模板。

请注意,您必须在定义类模板的同一个文件中定义成员函数。在 .h 文件中定义类模板,在 .cpp 中定义成员函数将在模板的情况下工作。

关于c++ - 类型未声明错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12762530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com