加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c++之左移运算符重载

发布时间:2020-12-16 09:06:01 所属栏目:百科 来源:网络整理
导读:#includeiostream using namespace std; class Person { // 利用友元使得该函数可以调用到私有的成员变量 friend ostream operator (ostream cout,Person p); public : 构造方法,由于成员变量是private,提供一个构造函数初始化 Person( int i, int j) :a(i
#include<iostream>
using namespace std;

class Person {
    //利用友元使得该函数可以调用到私有的成员变量
    friend ostream & operator<<(ostream& cout,Person& p);
public:
    构造方法,由于成员变量是private,提供一个构造函数初始化
    Person(int i,int j) :a(i),b(j) {}
private a;
     b;
};
cout属于ostream
注意返回ostream &,才能使用链式输出
ostream & operator<<(ostream &cout,Person &p) {
    cout << "a=" << p.a << ," << b=" << p.b;
    return cout;
}
void test() {
    Person p(1,2);
    cout << p<<另外的输出"<<endl;
}

 main() {
    test();
    system(pause");
    return 0;
}

输出:

三个知识点:

  • 如何初始化私有的成员变量(当然也可以利用封装)?
  • 函数如何调用私有的成员变量(友元)
  • 如何进行左移运算符重载

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读