封装是面向对象编程(OOP)的核心概念之一,它允许将数据(属性)和操作这些数据的代码(方法)捆绑在一起。在C++中,封装通过类(class)和对象(object)实现,提供了一种将实现细节隐藏起来,只暴露出一个可以被外界访问的接口的方式。
封装的理论基础
封装的主要优点包括:
- 数据隐藏:通过将成员变量设置为私有(private),防止外部直接访问。
- 接口暴露:只提供必要的公共(public)方法来访问和修改私有成员。
- 模块化:每个类负责一块特定的功能,使得代码更加模块化。
- 易于维护和扩展:封装使得修改实现细节变得更加简单,而不影响使用这些类的其他代码。
实操:封装在C++中的实现
下面是一个简单的C++封装示例,我们将创建一个BankAccount
类,它具有存款和取款的功能。
#include <iostream>
#include <string>
// 定义BankAccount类
class BankAccount {
private:
std::string accountHolder; // 账户持有者姓名
double balance;