c++ - 变量不可访问

标签 c++

在我声明这个类之后:

class Person
{
 private:
  int age;
 public:
  void setAge(int age);
  int getAge();
}

在 .h 文件中,我实现了 set 和 get 方法:

void Person::setAge(int age)
{
  this->age = age;
}
int Person::getAge()
{
  return age;
}

在.cpp 文件中

在从继承自“Person”类的另一个类“Employee”预订对象后​​,我试图从 main.cpp 文件访问年龄变量

Employee emp;
cin >> emp.age;

但是我得到这个错误:

member Person::age is inaccessible

最佳答案

您有一个用于读取当前年龄的访问器,以及一个用于写入当前年龄的修改器。要使用您的类,您需要读入一个临时变量,然后使用您的修改器来更改它。

Employee emp;

int employee_age; // temporary variable to read in age...
cin >> employee_age;

// using the mutator to set age
emp.setAge(employee_age);

关于c++ - 变量不可访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20588136/

相关文章:

c++ - 程序找不到 libgcc_s_dw2-1.dll

c++ - 为什么 python 的 dict 实现为哈希表,而 std::map 是基于树的?

c++ - dynamic_cast 是如何实现的

c++ - 找到第 N 位的 Pi

c++ - 在类型名之后使用范围解析运算符是什么意思?

c++ - 从 lambda 获取捕获的变量?

java - 使用 JNI 将 float* 转换为 jfloatArray

c++ - 类定义中的引用变量

c++ - 在主线程之间共享一个变量

c++ - 如何使用 BOOST BinaryFunction 概念?