c++

c++ class类访问权限如何设置

小樊
81
2024-09-24 23:47:15
栏目: 编程语言

在C++中,可以通过设置类访问修饰符来控制类的成员(包括数据成员和成员函数)的访问权限。C++提供了三种访问修饰符:publicprotectedprivate

  1. public:如果类的成员被声明为public,那么它可以被任何对象或类直接访问。这是默认的访问级别。
class MyClass {
public:
    int publicVar;
    void publicFunc();
};
  1. protected:如果类的成员被声明为protected,那么它们可以被该类的对象和派生类访问,但不能被其他非派生类访问。
class MyClass {
protected:
    int protectedVar;
    void protectedFunc();
};

class DerivedClass : public MyClass {
    void accessProtected() {
        protectedVar = 10; // OK
        protectedFunc(); // OK
    }
};
  1. private:如果类的成员被声明为private,那么它们只能被该类的成员函数访问,不能被任何对象或派生类访问。
class MyClass {
private:
    int privateVar;
    void privateFunc();

public:
    void accessPrivate() {
        privateVar = 10; // OK
        privateFunc(); // OK
    }
};

class DerivedClass : public MyClass {
    void accessPrivate() {
        // privateVar = 10; // Error: cannot access private member of MyClass
        // privateFunc(); // Error: cannot access private member of MyClass
    }
};

通过合理地设置类访问权限,可以实现封装和数据隐藏,保护类的内部实现不被外部直接访问,提高代码的安全性和可维护性。

0
看了该问题的人还看了