错误:没有运算符“<<”与这些操作数匹配
Posted
技术标签:
【中文标题】错误:没有运算符“<<”与这些操作数匹配【英文标题】:Error : No operator "<<" matches these operands 【发布时间】:2013-02-13 19:47:47 【问题描述】:我是 C++ 新手,我无法理解为什么会出现此错误。我收到的错误消息是“没有运算符 '
#include "LList.h"
#include <iostream>
using namespace std;
int main( )
LList a;
a.push_back( "30" );
a.push_front( "20" );
a.push_back( "40" );
a.push_front( "10" );
a.push_back( "50" );
cout << "list a:\n" << a << '\n';
return 0;
【问题讨论】:
为你写LList.h
的人没有实现打印。
【参考方案1】:
您需要为 LList 重载 operator <<
。为此,请执行以下操作:
std::ostream& operator<<(ostream& out, const LList& llist)
【讨论】:
哇,非常感谢。这清除了我的错误。就这么简单。如果我把那行代码放在 LList.h 文件或当前文件中,这有关系吗? 我说你需要实现它,这意味着简单地放置该行不会解决任何问题。您需要使用 LList 的接口来实现将其打印到输出流中的逻辑。 如果可以的话,如果你能帮我解决这个问题,可以吗?我一直在想在里面放什么,但我似乎想不出什么以上是关于错误:没有运算符“<<”与这些操作数匹配的主要内容,如果未能解决你的问题,请参考以下文章
对象向量 - C++。没有运算符“<<”与这些操作数匹配,错误