访问控制符用于指定类中成员的可访问性。类中有3种访问控制符public/private/protected,3种访问控制符具体意义:
public:公有的,可以直接访问,
1 2 |
Cpeople kim; // string strname = kim.name; //可以直接访问 所有public |
private:私有的,只有该类成员函数可以访问,private就让类class有了封装性。
1 |
string strID = kim.ID; //Err 不能直接访问 private |
protected:保护的,同private是一样的,主要区别在于类继承时。基类private部份继承后的类访问不了,基类protected部份继承后的类可访问。
1 |
unsigned int iage = kim.age; //Err 不能直接访问 protected |
1 2 3 4 5 6 7 8 9 10 11 12 13 |
class CSuperman : public Cpeople { public: void CSuperman(); void Setage(); }; void CSuperman::Setage() { age =100; //Cpeople中定义成protected在继承 //的类中可以访问, //这样就没有打破类的封装性 } |
类成员访问控制符public/private/protected代码测试实例:
类成员访问控制符public/private/protected,具体如何使用,经验是
一般对外的成员函数设计成public公有的,类如果要用于继承就将成员变量设计成protected保护的,类中如果确定不能直接被外部访问的变量就设计成private私有的。以上方法可供参考,具体如何设计访问控制符没有统一的标准,要根据实际情况来考虑。
《类成员访问控制符public/private/protected》上有2条评论
评论已关闭。