C++中的數據封裝是通過類和對象實現的。在C++中,可以使用訪問控制修飾符(public、private、protected)來控制類中的數據成員的訪問權限。一般來說,數據成員應該設置為私有(private),只能通過公共成員函數(public member functions)來訪問和修改數據成員的值,從而實現數據封裝。
下面是一個簡單的示例,展示了如何在C++中實現數據封裝:
#include <iostream>
class Person {
private:
std::string name;
int age;
public:
void setName(std::string n) {
name = n;
}
std::string getName() {
return name;
}
void setAge(int a) {
if(a < 0) {
std::cout << "Invalid age input" << std::endl;
return;
}
age = a;
}
int getAge() {
return age;
}
};
int main() {
Person p;
p.setName("Alice");
p.setAge(25);
std::cout << "Name: " << p.getName() << std::endl;
std::cout << "Age: " << p.getAge() << std::endl;
return 0;
}
在上面的示例中,我們定義了一個包含私有數據成員name和age的Person類。我們使用公共成員函數setName和getName來訪問和修改name數據成員,使用setAge和getAge來訪問和修改age數據成員。這種方式可以確保數據成員只能通過類的公共接口來訪問和修改,從而實現數據封裝。