• 友元


    1           友元

    1.1     全局函数做友元函数

    1.1.1     全局函数写到 类中做声明   并且最前面写关键字 friend

    1.2     让整个类 做友元类

    1.2.1     friend  class 类名

    1.2.2     友元类 是单向,不可传递的

    1.3     让成员函数做友元函数

    1.3.1     friend void goodGay::visit();

    #define _CRT_SECURE_NO_WARNINGS
    #include<iostream>
    using namespace std;
    #include <string>
    
    //只让 visit可以作Building的好朋友  visit2 不可以访问私有属性
    class Building;
    class goodGay
    {
    public:
        goodGay();
    
        void visit();
        void visit2();
    private:
        Building * building;
    };
    
    class Building
    {
        //让成员函数 visit作为友元函数
        friend void goodGay::visit();
        
    public:
        Building();
    public:
        string m_SittingRoom; //客厅
    private:
        string m_BedRoom; //卧室
    };
    
    goodGay::goodGay()
    {
        building = new Building;
    }
    
    void goodGay::visit()
    {
        cout << "好基友正在访问: " << this->building->m_SittingRoom << endl;
        cout << "好基友正在访问: " << this->building->m_BedRoom << endl;
    }
    
    void goodGay::visit2()
    {
        cout << "好基友正在访问: " << this->building->m_SittingRoom << endl;
        //cout << "好基友正在访问: " << this->building->m_BedRoom << endl;
    }
    
    Building::Building()
    {
        this->m_SittingRoom = "客厅";
        this->m_BedRoom = "卧室";
    }
    
    void test01()
    {
        goodGay gg;
        gg.visit();
        gg.visit2();
    }
    
    int main(){
    
        test01();
    
        system("pause");
        return EXIT_SUCCESS;
    }
  • 相关阅读:
    HTTP状态码详解
    phpcms v9调用多个栏目下文章的方法
    纯CSS3制作学生入学档案表单样式代码
    phpcmsv9 标题颜色显示问题
    Excel中利用IF和TIME函数计算出上下班状态!
    excel if判断时间段早晚班
    PHPCMS列表页伪静态
    EXCEL IF 函数 模糊查询
    如何用js实现截取一个字符串中的数字
    Elasticsearch学习之基本核心概念
  • 原文地址:https://www.cnblogs.com/Malphite/p/14394204.html
Copyright © 2020-2023  润新知