只能用全局函数重载左移运算符才能达到我们想要的效果
#include <iostream>
#include <Windows.h>
using namespace std;
class Person
{
private:
int m_A;
int m_B;
public:
Person(int a, int b);
friend ostream& operator << (ostream& cout, Person& person);
};
Person::Person(int a, int b)
{
m_A = a;
m_B = b;
}
//全局函数重载左移运算符
ostream& operator << (ostream& cout, Person& person)
{
cout << "m_A:" << person.m_A << " m_B:" << person.m_B;
return cout;
}
int main(void)
{
Person p(10, 20);
cout << p <<endl;
return 0;
}
运行截图: