为什么C++在类中要把成员变量放在私有,把成员函数放在公有
时间: 2023-11-14 21:34:47 浏览: 71
将成员变量放在私有部分的主要目的是为了保护这些成员变量,防止外部直接访问和修改。这样可以避免程序中的潜在错误,保证代码的安全性和稳定性。
将成员函数放在公有部分的主要目的是使外部代码可以通过调用这些函数来访问和修改私有成员变量。这样可以实现对成员变量的控制和保护,同时也方便了代码的使用和维护。
此外,将成员函数放在公有部分还可以方便地实现类的封装性和抽象性,使类的使用者不需要了解类的内部实现细节,只需要调用公有函数即可完成相应的操作。
相关问题
C++如何把类中私有成员作为参数传递给公有函数
在C++中,类中私有成员只能通过类的公有函数来访问和修改。如果需要把类中的私有成员作为参数传递给公有函数,则需要在类中定义一个公有函数来接收这个参数。
具体步骤如下:
1. 在类的公有成员函数中定义一个参数,类型与私有成员变量相同,例如:
```
class MyClass{
private:
int myVar; // 私有成员变量
public:
void myFunction(int arg); // 公有成员函数
};
```
2. 在类的公有成员函数中使用该参数来修改私有成员变量,例如:
```
void MyClass::myFunction(int arg){
myVar = arg; // 修改私有成员变量
}
```
3. 在调用该函数时,需要先创建类的对象,然后通过对象来调用该函数并传递参数,例如:
```
MyClass obj;
obj.myFunction(10); // 将10作为参数传递给公有函数
```
其中,obj是类的对象,myFunction是公有成员函数,10是作为参数传递给myFunction函数的。
需要注意的是,私有成员变量只能通过公有函数来访问和修改,不能直接从类外访问和修改。
在c++的类中,私有成员变量的值怎么改变
在C++的类中,私有成员变量的值只能被该类的成员函数访问和修改。如果需要修改私有成员变量的值,可以通过在类中定义公有的成员函数来实现。例如,可以定义一个公有的成员函数来设置私有成员变量的值,如下所示:
```
class MyClass {
private:
int myPrivateVar;
public:
void setMyPrivateVar(int value) {
myPrivateVar = value;
}
};
```
在这个例子中,setMyPrivateVar() 函数是一个公有的成员函数,可以被类的外部访问。该函数接受一个整数参数,用于设置私有成员变量 myPrivateVar 的值。