c++学习笔记--protected成员
来源:互联网 发布:mysql 删除授权用户 编辑:程序博客网 时间:2024/05/16 10:08
class Actor
{
string _name;
bool _gender;
public:
......
}
class Monk:public Actor
{
public:
patter();
}
void Monk::patter()
{
cout<<_name<<":_......"<<endl;
}
这样的代码,编译器会报错,error:“Actor::_name”:无法访问private成员
现在问题产生了:我们希望在Monk类中访问到基类的成员。但是又不希望该成员对外公开?
c++为此提供了protected关键字,该保护类型成员的含义是:该类的派生类可以使用该类型的成员,但对外来说,他还是私有的。所以对于设计类的时候,就要考虑:如果该类会被继承,那么其可能被派生类访问的成员需要声明为protected类型!
上列中,class Actor可以这样写:
class Actor
{
protected:
string _name;
bool _gender;
public:
......
}
这样的话,在MonK::patter中访问_name就不会出错
但是类的对象依然是不能访问protected的成员的
Monk tang;
tang._name="唐三藏";
error:“Actor::_name”:无法访问protected成员
- c++学习笔记--protected成员
- java学习笔记 --protected
- C++(笔记)浅谈protected
- C++静态成员学习笔记
- Ruby学习笔记_public,protected,private
- 学习笔记(四):public、private、protected
- C/C++学习笔记:指向类成员变量的指针
- IOS学习笔记01-关于objective-c的成员属性
- Objective-C学习笔记(十六)——成员变量
- NDK开发学习笔记—C/C++访问java成员
- protected成员访问规则
- 关于protected成员
- C++ protected成员
- 关于protected成员
- 静态成员-学习笔记
- C/C++静态成员变量和静态成员函数(学习笔记)
- 【从C到C++学习笔记】内联成员函数/成员函数重载及缺省参数
- C++ protected成员访问权限
- 报错 @Override需要删除
- 前触发器实例(SqlServer)
- OnSize
- linux rpm 安装 gcc
- 业界资讯:adobe flash player 升级至10.2
- c++学习笔记--protected成员
- SQL存储过程测试
- openCV 与MFC交互
- Symbian 设置TitlePane
- HttpBrowserCapabilities
- delphi操作Excel
- MFC之头文件相互包含问题及解决方法
- Flash AS3化骨綿掌之Flash AS3 Compiler的Bug
- 20101202