一、为什么学习C++:
(1)C++代表了当代软件开发的思想:面向对象开发,这是之前的课程没有涉及的,因此C++和Qt可以拓展新的编程思想。
(2)C++和Qt相对自成体系,是一个弯道超车的机会。
(3)C++和Qt是一个独立的就业方向。
(4)即使将来不从事C++或Qt方向,在工作中也一定会与类似此方向的同事共事。
二、C++的特点:
- 在支持C语言的基础上,全面支持面向对象开发。
- 编程领域广泛,功能强大(最难的编程语言之一)。
- 标准保持更新,本次课程以ISO C++98标准为主,以ISO C++11标准为辅。
- 为数不多的支持底层操作的面向对象语言。
- 在面向对象的编程语言中执行效率极高。
三、C++发展史:
1983年,贝尔实验室(Bell Labs)的Bjarne Stroustrup发明了C++。 C++在C语言的基础上进行了扩充和完善,是一种面向对象程序设计(OOP)语言。
Stroustrup说:“这个名字象征着源自于C语言变化的自然演进”。还处于发展完善阶段时被称为“new C”,之后被称为“C with Class”。C++被视为C语言的上层结构,1983年Rick Mascitti建议使用C++这个名字,就是源于C语言中的“++”操作符(变量自增)。而且在共同的命名约定中,使用“+”以表示增强的程序。
常用于系统开发,引擎开发、嵌入式开发等应用领域, 至今仍然是最受广大程序员喜爱的编程语言之一。
C++在嵌入式中可以用于:
系统开发、算法开发、图形用户界面(GUI)开发。
四、面向过程和面向对象:
1、面向过程的语言,关注的重点是“算法”,可以认为是一系列有序的步骤,只要按照这个步骤来做,就能得到预期的结果,这种思考方式更接近于计算机的思考方式。优点是可以把控到每个细节,因此程序的执行效率高;缺点是开发效率低。
2、面向对象的编程语言,关注重点是“对象”,可以认为“对象”的本质是一系列由于某种联系聚焦在一起数据单元体。不同单元体之间进行数据交互,从而实现代码运行的结果,程序员只需要站在更高层次去管理这些单元体,这种思考方式更接近人类的思考方式。优点是程序的开发效率高;缺点是执行效率低。