无法使用我的 C++ 中的对象来推送_front() 标准库列表;
我有一个类,我想使用标准库列表来存储它们的列表。 我本质上想 Push_front() 列表。 所以我的代码是这样的:
#include <list>
/* ... lots of stuff ...*/
complexNode myObject();
std::list<complexNode> complexList();
myList.push_front(myObject);
但是编译器抛出这个错误:
error: request for member 'push_front' in 'complexList', which is of non-class type 'std::list
类 ComplexNode 有一个复制构造函数。
我真的不明白这个问题以及该错误的实际含义......请帮忙!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这不应该是:
shouldn't this be :
此:
具有通用名称“C++ 最令人烦恼的解析"。 简而言之,您已将
complexList
设为返回列表的函数的声明,而不是局部变量。 去掉()
,那么它就不能被解析为函数。This:
Has the common name "C++'s most vexing parse". In short, you have made
complexList
be the declaration of a function that returns a list, instead of a local variable. Remove the()
, then it cannot be parsed as a function.