博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++ 访问控制 public, protected, private, 友元
阅读量:5285 次
发布时间:2019-06-14

本文共 979 字,大约阅读时间需要 3 分钟。

1. 变量属性与继承之间的关系

#include 
using namespace std;class A {public: int x;protected: int y;private: int z;};class B : public A { // x is public // y is protected // z is not accessible from B};class C : protected A { // x is protected // y is protected // z is not accessible from C};class D : private A { // x is private // y is private // z is not accessible from D};

  

2. 可见性

Only members/friends of a class can see private inheritance and only members/friends of derived class can see protected inheritance

protected member provides enhanced access for derived classes

private member keep implementation details

 

3. private 成员不能直接访问, 但是可以间接的通过函数的调用进行访问. 无论是哪种形式的继承, 基类的变量都会被子类继承下来, 所不同的仅是有些变量不可访问, 即 not accessible

 

4. 友元. 一个类友元(包括友元函数或友元类的所有成员函数) 可以访问该类的任何成员( 包括成员变量和成员方法)

 

5. 除去上面所说的几条内容, 有一种技术叫做 member spy(类成员间谍), 通过该技术, 派生类可以将基类的 protected 成员修改成 public 权限, 这种技术用到了 using 关键字

 

 

转载于:https://www.cnblogs.com/xinsheng/p/3468050.html

你可能感兴趣的文章
[读码时间] 弹出层效果
查看>>
session退出页面
查看>>
telnet登录路由器启动服务的shell脚本
查看>>
HSRP 详解
查看>>
mono3.2.3+Jexus5.5+openSuSE13.1的asp.net
查看>>
UVAL 4728 Squares(旋转卡壳)
查看>>
Ordered Fractions usaco
查看>>
SQA
查看>>
IO模型前戏
查看>>
web框架的概念
查看>>
算法训练 字串统计
查看>>
安卓详细布局分析-从根布局到具体布局
查看>>
Codeforces-733C-Epidemic in Monstropolis&&733D-Kostya the Sculptor(乱搞)
查看>>
HDU-4614-Vases and Flowers(线段树)
查看>>
eclipse——代码折叠快捷
查看>>
初识windos程序
查看>>
C中字符指针初始化
查看>>
ajax请求获取实时数据
查看>>
js判断邮箱、用户名、手机号码和电话号码是否输入正确?
查看>>
关于hover
查看>>