阅读量:0
C++中的可见性模式通过访问控制修饰符来实现,主要有private、protected和public三种。
- private:private成员在类外部是不可见的,只有在类内部可以访问。这个成员对外是隐藏的,只有该类的成员函数可以访问。
class MyClass { private: int privateVar; public: void myFunction() { privateVar = 10; // 可以访问private变量 } };
- protected:protected成员在类的子类中可以访问,但在类外部是不可见的。protected成员可以被派生类访问,但不能被外部类访问。
class BaseClass { protected: int protectedVar; }; class SubClass : public BaseClass { public: void myFunction() { protectedVar = 10; // 可以访问protected变量 } };
- public:public成员在类外部和类内部都可以访问。这个成员对外是可见的,任何地方都可以访问。
class MyClass { public: int publicVar; }; int main() { MyClass obj; obj.publicVar = 10; // 可以访问public变量 }
通过合理地使用这些访问控制修饰符,可以控制类的成员对外部的可见性,增强代码的封装性和安全性。