当前位置:   article > 正文

5.5_class a { public: int a; short b; void f1() {} voi

class a { public: int a; short b; void f1() {} void f2() {}
代码如下
  1. #include<iostream>
  2. using namespace std;
  3. class A
  4. {
  5. public:
  6. void f1( );
  7. int i;
  8. protected:
  9. void f2();
  10. int j;
  11. private:
  12. int k;
  13. };
  14. class B: public A
  15. {
  16. public:
  17. void f3( );
  18. protected:
  19. int m;
  20. private:
  21. int n;
  22. };
  23. class C: public B
  24. {
  25. public:
  26. void f4();
  27. private:
  28. int p;
  29. };
  30. int main()
  31. {
  32. A a1;
  33. B b1;
  34. C c1;
  35. return 0;
  36. }
1)<span style="font-family: Arial, Helvetica, sans-serif;">b1.i可以用,因为它是公有继承,基类中的公有成员仍然是公有成员;b1.j不能,保护成员不能再类外被直接调用,k是不可访问成员,b1.k当然不能用</span>
2)能,成员函数能调用基类公有成员函数和私有成员函数。
3)i,j能,k不能
4)除了c1.i可以,其他的都不可以用,因为类外只能调用公有成员,其他的不能。
5<span style="font-family: Arial, Helvetica, sans-serif;">)除了f2()不能,其他的都可以,因为f2是保护成员,不能再类外直接用,其他f1,f3,f4都是公有成员。</span>
<span style="font-family: Arial, Helvetica, sans-serif;">(6)可以,f1和f3是公有,f2是保护类,可以被派生类成员函数调用</span>
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/106125
推荐阅读
相关标签
  

闽ICP备14008679号