基础备忘:输入输出运算符重载

在c++中,cout是输出流ostream的对象,cin是输入流istream的对象。

注意:

1.重载输入输出运算符不能是类的成员函数,可以是普通函数或者类的友元函数。

2.如果重载输出运算符函数要访问类的非公有成员,应该把重载运算符函数定义为类的友元函数。

#include<iostream>
using namespace std;
class B
{
      public:
             int a;
             int b;
             B(int a,int b)
             {
                   this->a=a;
                   this->b=b;
                   }
      };

B& operator+(B& b1,B& b2)
{
            b1.a=b1.a+b2.a;
            b1.b=b1.b+b2.b;
            return b1;
            }
ostream& operator<<(ostream& op,B &b)
{
         op<<"a= "<<b.a<<"  b= "<<b.b;
         return op;
         }
istream& operator>>(istream& ip,B &b)
{
         ip>>b.a>>b.b;
         return ip;
         }
int main()
{
    B b1(1,2);
    B b2(2,3);
    B b3=b1+b2;
    cout<<"b3: "<<b3<<endl;
    cout<<"输入b1:"<<endl;
    cin>>b1;
    cout<<"b1: "<<b1<<endl;
    system("pause");
    }




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值