c++读文件怎么读取类中私有变量、
时间: 2024-01-09 19:03:20 浏览: 39
在C++中,类的私有变量只能在类的成员函数内部访问,因此要读取类中的私有变量,需要在类中定义一个公有成员函数,用于获取私有变量的值。该函数可以将私有变量作为返回值,供外部调用。在读取文件时,可以在读取文件的函数中调用该公有成员函数,将文件中的数据传递给该函数,再将数据存储到类的私有变量中。
举个例子,如果我们有一个类`Person`,其中有私有变量`name`和`age`,我们可以定义一个公有成员函数`setName`和`setAge`,用于设置私有变量的值,再定义一个公有成员函数`getName`和`getAge`,用于获取私有变量的值,代码如下:
```c++
class Person {
private:
string name;
int age;
public:
void setName(string name) {
this->name = name;
}
void setAge(int age) {
this->age = age;
}
string getName() const {
return name;
}
int getAge() const {
return age;
}
};
```
在读取文件时,可以先创建一个`Person`对象,然后调用`setName`和`setAge`函数,将文件中的数据分别存储到`name`和`age`变量中,如下所示:
```c++
Person p;
string name;
int age;
ifstream inFile("person.txt");
if (inFile.is_open()) {
inFile >> name >> age;
p.setName(name);
p.setAge(age);
inFile.close();
}
```
这样就可以通过`getName`和`getAge`函数获取类中的私有变量值了。