在 C++ 中,可以通过将成员变量声明为私有 (private) 或受保护 (protected),并提供公共的访问器函数 (getter function) 来实现外部对成员变量的只读访问。访问器函数仅返回成员变量的值,不允许修改它们。

例如:

class MyClass {
private:
    int myPrivateVar;
protected:
    int myProtectedVar;
public:
    int getMyPrivateVar() const {
        return myPrivateVar;
    }
    int getMyProtectedVar() const {
        return myProtectedVar;
    }
};

在这个例子中,myPrivateVar 是一个私有变量,只能在类内部访问。通过提供一个名为 getMyPrivateVar 的公共访问器函数,我们可以让类的外部访问该变量的值,但不能修改它。同样,myProtectedVar 是一个受保护的变量,只能在该类及其子类中访问。我们提供了一个名为 getMyProtectedVar 的公共访问器函数,以允许外部访问该变量的值,但不能修改它。

注意,我们在这些函数声明中使用了 const 关键字,表示这些函数不会修改类的成员变量。

通过这种方式,可以确保成员变量的值只能被读取,而无法被外部代码修改,从而提高代码的安全性。

C++ 类成员变量只读访问:私有、受保护和访问器函数

原文地址: https://www.cveoy.top/t/topic/nuA6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录