• cc30a_demoCppPrimer_友元与继承txwtech友元关系不能继承要明确授予友元


    //友元可以访问类的private与protected成员
    //友元关系不能继承-要明确授予友元

     1 #include <iostream>//CppPrimer_友元与继承-txwtech--cc30a_demo
     2 using namespace std;//导入std名称空间
     3 //友元可以访问类的private与protected成员
     4 //友元关系不能继承-要明确授予友元
     5 
     6 class Base //你爸爸
     7 {
     8     friend class Frnd;
     9     friend class D2;
    10 protected:
    11     int i;
    12 };
    13 class D1 :public Base //你,你继承你爸爸
    14 {
    15     friend class Frnd;//我爸爸
    16     friend class D2;//
    17 private:
    18     int j;
    19 };
    20 
    21 class Frnd //我爸爸
    22 {
    23 public:
    24     int mem(Base b) { return b.i; }
    25     int mem(D1 d) { return d.i; }
    26 
    27 };
    28 class D2 :public Frnd //
    29 {
    30 public:
    31     int mem(Base b) { return b.i; }
    32     int mem(D1 d) { return d.j; }
    33 };
    34 int main()
    35 {
    36     Base a;
    37     D1 b;
    38     Frnd c;
    39     D2 d;
    40     getchar();
    41     return 0;
    42 }
    欢迎讨论,相互学习。 txwtech@163.com
  • 相关阅读:
    ShaderLab 枚举常量
    PHP to .NET Compiler
    填充圆算法
    战争迷雾
    A*
    寻路算法
    Unity中将动画片段保存为文件
    令人蛋疼的错误提示 0xcdcdcdcd ,0xdddddddd ,0xfeeefeee ,0xcccccccc ,0xabababab
    2D光照
    Rider 2018 激活码
  • 原文地址:https://www.cnblogs.com/txwtech/p/12197590.html
Copyright © 2020-2023  润新知