C++运算符重载(插入and提取)

介绍

本文主要介绍 插入(>>) and 提取(<<)的运算符重载
1.插入(>>) 提取(<<)只能是友元函数
2.插入关键词istream
例子:istream& operator>>(istream& in, sumber&Left)
3.提取关键词ostream
例子:ostream& operator<<(ostream& in, sumber&Left);
4.PS:插入(istream) and 提取(ostream)重载的话类型后面 必须加上&

源码

#include

using namespace std;
class sumber
{
	//友元 插入(>>)重载
	friend istream& operator>>(istream& in, sumber&operand);
	//友元 提取(<<)重载
	friend ostream& operator<<(ostream& out, sumber&operand);
public:
	//初始化构造函数
	sumber(int real = 0, int vir = 0) :m_real(real), m_vir(vir){}
private:
	int m_real;
	int m_vir;
};
//插入(>>)重载
istream& operator>>(istream& in, sumber&operand)
{
	//设置插入方法(步骤)
	in >> operand.m_real >> operand.m_vir;
	//返回插入流
	return in;
}
//提取(<<)重载
ostream& operator<<(ostream& out, sumber&operand)
{
	//设置提取方法(步骤)
	out << operand.m_real <<" "<< operand.m_vir;
	//返回插入流
	return out;
}
void main()
{
	sumber cp1(30,10);
	//通过重载操作实现cp1的输入输出
	cin >> cp1;
	cout << cp1 << endl;;

	system("pause");
}

运行结果

50 60
50 60
请按任意键继续. . .

你可能感兴趣的:(C++学习参考,c++,学习,笔记)