在C++中,访问修饰符可以通过类中的关键字来实现封装。C++中有三种访问修饰符:public、private和protected。
下面是一个使用访问修饰符进行封装的示例:
class MyClass {
private:
int privateVar;
public:
void setPrivateVar(int value) {
privateVar = value;
}
int getPrivateVar() {
return privateVar;
}
private:
int privateFunc() {
return privateVar * 2;
}
public:
int publicFunc() {
return privateFunc();
}
};
int main() {
MyClass obj;
obj.setPrivateVar(10);
cout << obj.getPrivateVar() << endl; // 输出10
cout << obj.publicFunc() << endl; // 输出20
//以下代码会编译错误,因为privateVar和privateFunc是私有的,外部无法访问
//cout << obj.privateVar << endl;
//cout << obj.privateFunc() << endl;
return 0;
}
在上面的示例中,私有成员privateVar和privateFunc只能在类的内部访问,而公有成员setPrivateVar、getPrivateVar和publicFunc可在类的外部访问。这样就实现了封装,将类的实现细节隐藏在类的内部。