c++如何把值赋给私有成员
时间: 2023-07-05 11:28:13 浏览: 53
在C++中,可以使用成员函数或友元函数来给私有成员赋值。以下是两种方法:
1. 成员函数赋值:
在类中定义一个成员函数,用于给私有成员赋值。该成员函数可以是公有的,因为它可以访问私有成员。
例如,定义一个名为setValue的公有成员函数,用于给私有成员赋值:
```
class MyClass{
private:
int myValue;
public:
void setValue(int value){
myValue = value;
}
};
```
在主函数中,可以通过创建类对象并调用该成员函数来给私有成员赋值:
```
int main(){
MyClass obj;
obj.setValue(10); // 给私有成员myValue赋值为10
return 0;
}
```
2. 友元函数赋值:
在类中定义一个友元函数,用于给私有成员赋值。友元函数可以访问类的私有成员。
例如,定义一个名为setValue的友元函数,用于给私有成员赋值:
```
class MyClass{
private:
int myValue;
friend void setValue(MyClass &obj, int value); // 将setValue函数声明为友元函数
};
void setValue(MyClass &obj, int value){
obj.myValue = value; // 给私有成员myValue赋值为value
}
```
在主函数中,可以通过创建类对象并调用该友元函数来给私有成员赋值:
```
int main(){
MyClass obj;
setValue(obj, 10); // 给私有成员myValue赋值为10
return 0;
}
```