如何在C ++中打印类对象?我已经改进了<<

how to print class object in c++? I have refine the <<

本文关键字:lt 对象 打印      更新时间:2023-10-16

in class test:

ostream& operator <<(ostream& os, const Test& test){
    os<<"hooooo"<<endl;
    return os;
}

在测试代码中:

Test t2 = Test(10, 20);

为什么cout<< t2 <<endl编译流行错误?我已经完善了<<。

与"std::cout <<t2"中的"运算符<<"不匹配

你需要实际将其定义为友元函数。 运算符必须由运算符前面的操作数定义。 因此,您可以使用 friend 关键字定义它,以便该函数仍然可以与类的内部混在一起,但可以按照它需要的方式工作。 如果我不是很清楚,我很抱歉,我已经有一段时间没有这样做了。 也不确定您应该将函数的主体放在哪里。 只需查找friend关键字即可。