重载输入/输出运算符

Eng*_*999 1 c++ cout function operator-overloading

当重载输入或输出运算符(>>或<<)时,我看到该函数接受两个参数,一个对iostream对象的引用和对我们希望输入或输出的任何对象的引用.运算符<< Matrix对象的示例:

std::ostream& operator<< (std::ostream& stream, const Matrix& matrix);
Run Code Online (Sandbox Code Playgroud)

调用此函数时,我们只需要传递Matrix对象,例如:

Matrix m1;
cout<<m1;
Run Code Online (Sandbox Code Playgroud)

另一个ostream对象参数怎么样?这是如何运作的?提前致谢

Pup*_*ppy 5

另一个论点就是cout它自己.电话变成了operator<<(cout, m1).

如果操作符只接受了一个参数,那么您可以编写<< m1;一个完整的语句,但不能.