c++ class public private
时间: 2023-09-24 21:09:25 浏览: 90
浅谈C++类中的公有和私有
在 C++ 中,类中的成员变量和成员函数可以被定义为 public、private 或 protected。这些关键字用于控制类的访问权限。
public 成员可以被任何人访问,包括类的成员函数、类外的函数和其他类的成员函数。通常情况下,成员函数应该定义为 public,以便其他函数和类可以使用它们。
private 成员只能被类的成员函数访问,不能被类外的函数或其他类的成员函数访问。通常情况下,成员变量应该定义为 private,以确保数据的封装性。
protected 成员与 private 成员类似,也只能被类的成员函数访问。不同的是,protected 成员可以被其派生类的成员函数访问。通常情况下,protected 成员应该用于实现类的继承和多态性。
以下是一个使用 public 和 private 成员的示例代码:
```c++
#include <iostream>
using namespace std;
class MyClass {
public:
void setX(int x) {
this->x = x;
}
int getX() {
return x;
}
private:
int x;
};
int main() {
MyClass obj;
obj.setX(10);
cout << obj.getX() << endl; // 输出 10
// cout << obj.x << endl; // 错误:x 是 private 成员,不能被访问
return 0;
}
```
在上面的代码中,我们定义了一个名为 MyClass 的类,它包含一个 private 整数成员 x 和两个 public 成员函数 setX 和 getX。setX 函数用于设置 x 的值,getX 函数用于获取 x 的值。在主函数中,我们创建了一个 MyClass 对象 obj,并调用 setX 函数将 x 设置为 10。然后,我们使用 getX 函数获取 x 的值,并输出结果。
需要注意的是,private 成员只能在类的成员函数中访问,不能在类外的函数或其他类的成员函数中访问。如果尝试访问 private 成员,编译器将会报错。
阅读全文