大家好,今天在这个博客中我们将讨论什么是C++中的面向对象编程概念,以及用C++实现面向对象编程概念。
在C++中,面向对象编程的四个基本支柱是:
- 封装
- 多态性
- 继承性
- 抽象
类
类是一种由用户定义的数据类型,它拥有自己的数据成员和成员函数。它可以通过创建一个该类的实例(对象)来访问和使用。
"一个类是一个对象的蓝图"
对象
它是面向对象编程的一个基本单位,代表现实生活中的实体,如椅子、自行车、标记等。一个对象是一个类的实例。
定义类和对象的声明。

对象的语法。
ClassName ObjectName。
封装
基本上,它是将数据成员和成员函数合并成一个实体的过程,称为类。此外,它还被用来防止对数据的直接访问。如果你想访问数据,你必须通过该类的函数来访问它。
例如:胶囊,它是由不同的药物包裹的。所以这就是我们在封装中所做的。
封装的代码实现

输出 5
多态性
首先,我们要知道多态性这个词的来源。然而,多态性来自于两个词 "Poly "和 "Morphs"。其中poly表示许多,morphs表示形式。它是指在同一个类中,能够从同一名称的函数中执行两个或两个以上的不同任务的能力。
例如:一个人在同一时间可以是父亲、儿子、兄弟、雇员等。
多态性的类型

函数重载。
因为它是一种编译时的多态性,其中函数的名称应该是相同的。但是,参数应该是不同的。在函数重载中,我们可以在不同类型的参数或不同数量的参数的帮助下定义函数。因此,在这些差异的帮助下,编译器可以区分不同的函数。
函数重载的代码实现。

输出。
10
15
操作符重载。
操作符重载是使一个操作符在不同情况下表现出不同行为的过程。换句话说,我们可以说操作符被重载,在用户定义的类中具有特殊的意义。因为,它是用一个函数名来执行不同类型的任务。
比如说。操作符 "+",我们可以在String这样的类中重载它,这样我们就可以通过使用+来连接两个字符串了。
操作符重载的代码实现。
輸出 计算结果是:10
函数重载。
由于它是运行时的多态性,它提供了一个功能,允许我们在子类中拥有父类中已经存在的相同功能。然而,子类继承了父类中的所有数据成员和成员函数。
总之,如果我们谈论函数重写的优势。它有助于节省内存空间,保持一致性,以及我们代码的可读性。
函数重写的代码实现。

输出 派生类
继承性
继承是面向对象编程概念中最重要的特征。因为,继承是一个过程,其中一个对象自动获得其父对象的所有属性和行为。
此外,如果我们谈及继承的优点,它可以增加代码的可重用性。
狐狸的例子。在父子关系中,儿子继承了父亲的物理属性。
在C++中总共有五种类型的继承。
- 单一继承 单一继承 是指子类只从一个父类中继承。

- 多级继承多重继承是指派生一个新的类,从两个或更多的类中继承属性的过程。

- 多重继承多重继承是指派生出继承了两个或多个类的属性的新类。

- 分层继承分层继承是一种继承类型,在这种继承中,一个以上的子类被单个基类所继承。它被称为分层继承(hierarchical Inheritance)。

- 混合继承混合继承是两种或多种继承类型的结合。
比如说。让我们把两种继承方式结合起来,即分层继承和多重继承,如下图所示。

抽象
由于抽象也是面向对象编程概念的重要特征,因为它提供了数据隐藏功能。换句话说,它是一种属性,通过它我们可以向外界隐藏一个程序的完整实现,只向他们显示相关的信息,它被用来为数据提供安全,防止未经授权的访问。
例如:ATM机。ATM机的所有性能,如现金提取、汇款、银行报表等。但我们不知道ATM机的内部工作。
抽象的优点
- 它避免了代码的重复,增加了代码的可重用性
- 它帮助用户避免编写低级别的代码
抽象的代码实现
输出。
a = 10
b = 20
结语
总之,在这个博客中,我们学习了C++语言中面向对象编程的概念。为了更好地理解,我们还实现了代码,并谈论了现实生活中的例子。
我希望你喜欢我的博客。如果你有任何建议,请发表评论。
谢谢!