C++中外部函数如何访问私有变量?

2023-05-11 阅读 44

外部函数不能直接访问类的私有变量,但可以通过类的公有成员函数间接地访问私有变量。在类的公有成员函数中,可以使用this指针来访问类的私有成员变量。外部函数可以通过调用公有成员函数来访问私有变量。例如:

class MyClass {
private:
    int privateVar;
public:
    void setPrivateVar(int var) {
        privateVar = var;
    }
    int getPrivateVar() {
        return privateVar;
    }
};

void externalFunc(MyClass& obj) {
    int var = obj.getPrivateVar();
    // 外部函数通过调用公有成员函数getPrivateVar()来访问私有变量privateVar
    // ...
}

在上面的例子中,外部函数externalFunc通过调用MyClass的公有成员函数getPrivateVar()来访问私有变量privateVar。

更新于 2023年05月14日