C++ 面向对象
C++ 编程的主要目的是将面向对象特性添加到 C 编程语言中,而 C 语言本身就是最强大的编程语言之一。
纯面向对象编程的核心是在代码中创建具有特定属性和方法的对象。在设计 C++ 模块时,我们尝试以对象的形式看待整个世界。例如,汽车是一个具有特定属性(例如颜色、车门数量等)的对象。它也具有某些方法(例如加速、刹车等)。
面向对象编程的基础由一些基本概念构成 -
对象
这是面向对象编程的基本单位。数据和操作数据的函数都被捆绑为一个称为对象的单元。
类
定义类时,实际上是为对象定义了一个蓝图。这实际上并没有定义任何数据,但它定义了类名的含义,即类的对象由什么组成,以及可以对此类对象执行哪些操作。
抽象
数据抽象是指只向外界提供必要的信息,隐藏其背景细节,即在程序中表示所需信息而不提供具体细节。
例如,数据库系统隐藏了数据存储、创建和维护的某些细节。类似地,C++ 类向外界提供不同的方法,但不提供这些方法和数据的内部细节。
封装
封装是将数据和处理该数据的函数放在同一个位置。使用过程式语言时,并不总是清楚哪些函数作用于哪些变量,但面向对象编程提供了将数据和相关函数放在同一个对象中的框架。
继承
面向对象编程最有用的方面之一是代码可重用性。顾名思义,继承是从现有类(称为基类)中创建新类的过程,新类被称为派生类。
这是面向对象编程中一个非常重要的概念,因为它有助于减少代码大小。
多态性
以不同方式使用运算符或函数的能力,换句话说,赋予运算符或函数不同的含义或功能,称为多态性。"多"指的是"许多"。单个函数或运算符根据使用方式的不同而以多种不同方式运作,这被称为多态性。
重载
重载的概念也是多态性的一个分支。当现有的运算符或函数被赋予对新数据类型的操作时,就被称为重载。