如何将自定义类传递给std :: cout?

时间:2018-07-25 23:32:58

标签: c++ c++11 c++14

我正在尝试编写C ++程序,但是在复制分配部分非常费力。这是我的代码:

async

输出为:

  

main.cpp:在成员函数‘CarCounter&CarCounter :: operator =(const   CarCounter&)”:main.cpp:30:9:错误:“ operator <<”不匹配   (操作数类型为“ std :: ostream {aka std :: basic_ostream}”和   “ CarCounter”)       cout << *此<< endl;

我知道这可能是一个明显的菜鸟错误,但是我是C ++的新手。我感谢我能获得的所有帮助。谢谢!

2 个答案:

答案 0 :(得分:1)

您无法将自定义类传递给cout。该错误基本上是说您的类CarCounter不兼容,无法通过管道传递到cout。似乎该行完全不需要,可以删除。

答案 1 :(得分:1)

您的副本分配运算符应如下所示:

CarCounter& CarCounter::operator=(const CarCounter& objToCopy) {
   carCount = objToCopy.carCount;
   return *this;
}