类和对象-运算符重载
左移运算符重载
作用:可以输出自定义数据类型
#include<iostream>
#include<string>
using namespace std;
//左移运算符重载
class person
{
public:
person(int a, int b)
{
m_A = a;
m_B = b;
}
friend ostream& operator<<(ostream& cout, person& p);
private:
//利用成员函数重载左移运算符
//不能利用成员函数重载<<运算符,因为无法实现cout在左侧
//void operator<<(cout)
//{
//}
int m_A;
int m_B;
};
//只能利用全局函数重载左移运算符
ostream & operator<<(ostream &cout, person &p)//简化 cout << p;
{
cout << "m_A= " << p.m_A << " " << "m_B= " << p.m_B;
return cout;
}
void test01()
{
person p(233,137);
//p.m_A = 233;
//p.m_B = 137;
cout << p << endl;
}
int main()
{
test01();
system("pause");
return 0;
}