C++ 数据封装
C++ 数据封装
什么是数据封装?
数据封装是一种把数据和支持操作数据的函数包装在一起的技术。这些函数被用来控制对数据的访问。数据封装使得对象的内部状态被保存在对象内部,同时又可以通过对象的公有方法来访问和操作这些数据。
在C++中,可以通过使用类来实现数据封装。类封装了数据以及相关的函数,对外部使用者屏蔽了内部实现的细节。
数据封装的优点
使用数据封装可以实现以下优点:
-
数据的安全性:数据被封装在类的私有部分,外部无法直接访问。只有提供公有的访问方法才能访问私有数据。这样避免了其他模块对类数据的随意修改,确保数据的完整性。
-
代码的灵活性:一旦数据被封装入类,就可以定制数据的访问方式,可以实现对数据的限制访问等操作。这样使得代码更加灵活,便于维护和复用。
-
增强模块化:使用数据封装可以把代码分解成互不干扰的模块,这样不同的开发者可以分散的开发和修改不同的模块,提高开发效率和代码质量。
数据封装示例
下面是一个简单的C++类,该类封装了一个整数,提供了一个公共方法来访问和修改该整数:
#include<iostream>
using namespace std;
class Int {
private:
int num;
public:
void setNum(int num) {
this->num = num;
}
int getNum() {
return num;
}
};
int main( ) {
Int i;
i.setNum(10);
cout << "Value of i : " << i.getNum() << endl;
return 0;
}
在上面的示例中,类Int封装了一个整数num。该成员变量num被声明为私有,在类的主体之外不能被访问。类的主体中提供了两个公有方法setNum和getNum,用于设置和获取num变量。
在main函数中,我们创建了一个Int类的对象i,通过setNum方法设置了i的成员变量为10,并通过getNum方法获取到num变量的值。最后我们在控制台输出了i的num值。
通过上面的示例,我们可以看到,使用数据封装可以实现对数据访问的控制和限定,确保应用程序数据的安全性和完整性。