在C++中,封装是通过访问限定符(public、private、protected)来实现的。我们可以在类的定义中使用这些访问限定符来控制成员变量和成员函数的访问权限,以实现封装。
下面是一个简单的示例,演示了如何在C++中定义一个类并实现封装:
#include <iostream>
class MyClass {
private:
int privateVar;
public:
void setPrivateVar(int value) {
privateVar = value;
}
int getPrivateVar() {
return privateVar;
}
};
int main() {
MyClass obj;
// 不能直接访问私有成员privateVar
// obj.privateVar = 10; // 会编译错误
// 通过公有成员函数来访问私有成员privateVar
obj.setPrivateVar(10);
std::cout << obj.getPrivateVar() << std::endl;
return 0;
}
在上面的示例中,我们定义了一个类MyClass
,其中包含一个私有成员变量privateVar
和两个公有成员函数setPrivateVar
和getPrivateVar
。私有成员变量privateVar
只能通过公有成员函数来设置和获取,外部代码无法直接访问私有成员变量。这样就实现了封装,保护了类的内部实现细节,同时提供了公有接口供外部代码使用。