简介
- C++语言是C语言的超集,它扩充和完善了C语言;C++语言是一种静态类型的、编译时的、跨平台的、不规则的中级编程语言,综合了高级语言和低级语言的特点
- C++支持的编程类型
- 面向对象编程
- 过程化编程
- 派生自结构化编程,使用程序调用或函数调用的方式来进行流程控制
- 流程则由包涵一系列运算步骤的程序(Procedures)、例程(routines)、子程序(subroutines)、 方法(methods)、或函数(functions)来控制;
- 在程序运行的任何一个时间点,都可以调用某个特定的程序;任何一个特定的程序,也能被任意一个程序或是它自己本身调用
- 泛型编程
- 允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时(instantiate)作为参数指明这些类型
- 泛型定义的种类
- 在程序编码中一些包含类型参数的类型,也就是说泛型的参数只可以代表类,不能代表个别对象。(这是当今较常见的定义)
- 在程序编码中一些包含参数的类。其参数可以代表类或对象等等。(现在人们大多把这称作模板)
- C++的使用场景
- 编写设备驱动程序和其他要求实时性的直接操作硬件的软件
- 编写苹果电脑或 Windows PC 机系统的主要用户接口
面向对象程序设计的特性
- 封装
- 将数据和操作数据的函数绑定在一起;避免受到外界的干扰和误用,确保了安全
- 数据隐藏
- 继承
- 继承是 OOP 中一个重要的概念,代表了一种 is a 的关系;提高了代码重用率和执行效率
- 多态
- 基于继承和虚函数实现,是一种动态绑定技术;调用成员函数期间,根据调用函数的对象的类型动态的决定最终调用的函数(虚函数)实现
C++标准库的重要组成部分
- 核心语言,提供了所有构件块,包括变量、数据类型和常量,等等
- C++ 标准库,提供了大量的函数,用于操作文件、字符串等
- 标准模板库(STL),提供了大量的方法,用于操作数据结构等