在C++中,我们可以使用访问修饰符来定义类的成员的访问权限。C++中有三种访问修饰符:public、private和protected。
1. public:公有成员可以在类的内部和外部被访问。它们可以被类的成员函数、类的对象和类的派生类的成员函数访问。
2. private:私有成员只能在类的内部被访问。它们不能被类的对象和类的派生类的成员函数访问。私有成员常用于封装类的实现细节。
3. protected:受保护成员可以在类的内部被访问,也可以被类的派生类的成员函数访问。它们不能被类的对象访问。受保护成员常用于实现继承关系中的数据封装。
下面是一个示例代码,演示如何自定义访问权限:
```cpp
class MyClass {
public:
int publicVar; // 公有成员
private:
int privateVar; // 私有成员
protected:
int protectedVar; // 受保护成员
};
int main() {
MyClass obj;
obj.publicVar = 1; // 可以访问公有成员
// obj.privateVar = 2; // 错误!不能访问私有成员
// obj.protectedVar = 3; // 错误!不能访问受保护成员
return 0;
}
```
在上面的示例中,`publicVar`是公有成员,可以在类的内部和外部被访问。`privateVar`是私有成员,只能在类的内部被访问。`protectedVar`是受保护成员,可以在类的内部和派生类的成员函数中被访问。