【发布时间】:2016-03-14 14:22:23
【问题描述】:
堆栈溢出的新功能。 所以我正在尝试重建我在大学里学到的所有东西,这是我将用来进入堆栈/队列的模板节点
template<typename T>
class node{
public:
node();
node(T data);
~node();
T GetData();
node *&GetNext();
private:
void DeleteNode(); //Deletes Node
T m_data; //Template Data
node *next; //next pointer
};
template<typename T>
node *&node<T>::GetNext() //Error is here
{
return next;
}
错误读作“错误:预期的构造函数、析构函数或在'*'标记之前的类型转换”
我尝试了移动节点和 *& 的不同变体,但似乎都不起作用。
【问题讨论】:
-
你想做什么?也许这个问题可以让我们更好地帮助你。
-
将指针的引用作为参数是有意义的。返回对指针的引用通常不会。您不希望您班级的用户去更改内部指针,对吗?
-
@hlt 当然你可以引用指针,并且应该有一个与那里使用的完全相同的指针。
-
它应该返回名为 next 的指针。并且错误不在 *&.我让它在一个不在模板中的不同迭代中正确运行。
-
@JoshuaLiu 删除
&。
标签: c++