我有一个关于运营商的问题<<超载。我需要在我的作业中使用一个来返回矢量的内容。我认为我的运算符方法有效,但我完全不知道如何在另一个类中调用它。
这是我在ColonneCartes.cpp课程中的操作员:
ostream& operator<<(ostream & os, const ColonneCartes & p_colonneCartes)
{
for (int i = 0; i < myVector.size(); i++)
{
os << myVector.at(i).getValue();
}
return os;
};
我试图从另一个类调用它来在控制台中显示它,但我还没有找到如何做到这一点。
我的第二个问题是关于在操作符中返回矢量对象的内容,我想知道是否有另一种方法,而不是使用像这样的循环来返回内容?
非常感谢!
答案 0 :(得分:1)
您要引用的控制台称为标准输出( stdout )。在C ++中,使用流输出到 stdout ,您应该使用std::cout
标题中的iostream
对象。
假设您有一个类型为colonneCartes
的{{1}}对象,那么,为了将其ColonneCartes
输出到标准输出,请写:
myVector
您编写的#include <iostream>
...
std::cout << colonneCartes;
是在operator<<
之后使用ColonneCartes
类型的对象的原因。