MST

星途 面试题库

面试题:C++中类外访问非公有成员的常规替代方法

在C++中,已知一个类包含非公有成员变量`privateVar`,不能直接在类外访问。请说明一种常规的通过类的成员函数来间接让外部获取`privateVar`值的方法,并给出代码示例。
32.1万 热度难度
编程语言C++

知识考点

AI 面试

面试题答案

一键面试
  1. 方法说明
    • 可以通过在类中定义一个公有的成员函数(通常称为访问器或getter函数),该函数返回私有成员变量privateVar的值。这样外部代码就可以通过调用这个公有的成员函数来间接获取privateVar的值。
  2. 代码示例
#include <iostream>

class MyClass {
private:
    int privateVar;
public:
    MyClass(int value) : privateVar(value) {}
    int getPrivateVar() const {
        return privateVar;
    }
};

int main() {
    MyClass obj(10);
    std::cout << "The value of privateVar is: " << obj.getPrivateVar() << std::endl;
    return 0;
}

在上述代码中:

  • MyClass类有一个私有成员变量privateVar
  • getPrivateVar函数是一个公有的成员函数,它返回privateVar的值。在main函数中,创建了MyClass类的对象obj,并通过调用obj.getPrivateVar()来获取privateVar的值并输出。