1. 简介
1.1 C++与C的区别
- C是C++的基础,C++和C在很多方面是兼容的。
- C和C++的最大区别在于:解决问题时思维方式
(1)C:采用面向过程/面向结构的思维方式。
(2)C++:采用面向对象的思维方式。
1.2 C++的定义
- C++(即C Plus Plus)是在C语言的基础上开发的一种通用程序设计语言或编程语言。
1.3 C++的语言特点
- 主要表现在两个方面:
(1)尽量兼容C(包括了C的所有特征、属性和优点(如高效、灵活性),同时改进了C的一些不足);
(2)支持面向对象的程序设计。 - 具体表现如下:
(1)C++是C语言的超集,保持与C兼容;
(2)C++可读性更好,代码结构更合理;
(3)C++生成代码的质量高;
(4)C++可重用性、可扩充性、可维护性和可靠性有所提高;
(5)C++支持面向对象的机制;
(6)C++设计成静态类型与C同样高效,而且是可移植的多用途程序设计语言;
(7)C++设计直接的和广泛的支持多种程序设计风格(程序化程序设计、资料抽象化、面向对象程序设计、泛型程序设计);
(8)C++设计无需复杂的程序设计环境(编程环境及集成开发环境IDE);
(9)C++的很多特性都是以库(如STL)或其他的形式提供的,而没有直接添加到语言本身里;
(10)C++引入了面向对象的概念,使得开发人机交互类型的应用程序更为简单、快捷。很多优秀的程序框架包括Boost、Qt、MFC等就是使用的C++;
1.4 C++的发展阶段
-
发展细要
时间范围 发展情况 80年代-1995年 传统类型上的面向对象语言,在工业界使用的开发语言中占据了相当大份额(由于效率高)。 1995年-2000年 标准模板库(STL)和Boost等程序库的出现,泛型程序设计在C++中占据了越来越多的比重性。 2000年-现今 Loki等程序库为代表的产生式编程和模板元编程的出现,使得C++的发展更上一层。 注:以上是C++语言发展的主要三个阶段。语言的发展是一个逐步递进的过程。
C++ 是直接从 C 语言发展过来的;
C 语言是从 B 语言发展过来的;
B 语言是 BCPL 的一个解释性后代,BCPL 是 Basic CPL。
1.5 C++标准
- C++98标准: C++标准第一版,1998年发布。
- C++03标准: C++标准第二版,2003年发布。这个标准仅仅是对C++98做了一些“勘误”。
- C++11标准: C++标准第三版,2011年8月12日发布。C++11包含了核心语言的新机能,并且拓展C++标准程序库,并且加入了大部分的C++ Technical Report 1程序库(数学上的特殊函数除外)。此次标准为C++98发布后13年来第一次重大修正。
- C++14标准: C++标准第四版,2014年8月18日发布。主要是支持普通函数的返回类型推演,泛型 lambda,扩展lambda捕获,对constexpr函数限制的修订,constexpr变量模板化等等。
- C++17标准: C++标准第五版,2017年12月5日发布。旨在使 C++ 成为一个不那么臃肿复杂的编程语言,以简化该语言的日常使用,使开发者可以更简单地编写和维护代码。
- C++20标准: C++标准第六版,2020年发布。敬请期待。
参考文献:
[1]《C++全方位学习》范磊------第一章
[2]《C++程序设计教程(第二版)》钱能------第一章
[3] 百度搜索关键字:C++、C++与C的区别、C++的语言特点、C++的发展历史、C++标准