C++ 入门:历史、首个程序与命名空间详解
一、C++ 历史介绍
1.1 起源与诞生(1979~1983)
背景方面,1979 年 Bjarne Stroustrup(本贾尼·斯特劳斯特鲁普)在贝尔实验室工作时,发现传统的 C 语言在项目开发中存在表达能力不足、可扩展性及可维护性欠缺的问题。为此,他设计并开发了 C++。
1.2 核心特性
C++ 是在 C 语言的基础上引入了类、封装、继承、多态等面向对象特性,这促使了 C++ 雏形的形成,并在 1983 年正式更名为 "C++"。
1.3 发展与完善(1980~1989)
随着 C++ 语言在学术界和工业界逐渐普及,它被广泛用于教学研究和产品开发。在此期间,C++ 的标准库、模板等特性得到了进一步的发展和完善。
1.4 标准化和定型(1989~1998)
- 启动:1989 年,ANSI 和 ISO 联合标准化委员会成立,启动标准化工作。
- 里程碑:1994 年提出首个草案,之后决定将 STL(标准模板库)纳入标准,极大地丰富了语言的能力。
- 完成:1998 年,ANSI/ISO C++ 正式发布,标志着现代 C++ 的成型。
总之,C++ 的发展史是一条从解决实际问题出发,通过引入面向对象范式增强代码组织能力,并通过标准化和吸纳 STL 等强大库,演变成为一个功能全面、性能卓越的编程语言的清晰路径。
二、C++ 的版本更新
下面是 C++ 语言的更新时间线:

在 1998 年 C++ 正式发布之初,委员会制定了每隔五年进行一次大更新的'五年计划'。在第一个五年计划中,即 C++03 版本,主要是对 C++98 的一些漏洞和语法进行修复,并没有发布太多新功能。
随后大家期待着 C++08 的发布,但委员会在 07 年左右发现无法在规定时间内发布,于是将发布时间向后延迟。2011 年,C++11 正式发布,此次发布增加了一些新特性。随后委员会认识到五年目标太宏大,不如改成三年计划,后来就有了 C++14、17、20、23。如上图所示,C++ 特性介绍越多,此次版本更新就越大。
三、C++ 参考文档
3.1 参考文档
以下是 C++ 的相关参考文档:
- 文档一:cplusplus.com
- 文档二:cppreference.com
小贴士:参考文档 1 并不是 C++ 官方文档,版本只更新到 C++11,但它以头文件形式呈现,阅读比较方便;参考文档 2 是 C++ 官方英文文档,信息非常全面,版本更新至最新的 C++23,但阅读起来没有文档 1 方便。参考文档 2 原本有中文版,但因某些原因目前无法访问。
3.2 C++ 相关小知识
上面两个参考文档其实已经足够绝大多数场景使用。现阶段大多使用 C++98 和 C++11 版本,少部分大厂会用到 14 和 17 版本,而 C++23 现在使用的频率很少,因为编译器甚至没有完全支持完。
为什么会有这种情况?因为标准委员会制定的是 C++ 版本标准,而编译器是由各个公司独立开发的。像目前主流的编译器有微软的 MSVC、苹果的 Clang,以及 Linux 的 GCC/G++。这些大公司开发的编译器决定了我们能使用哪些特性。
还有人会问,C++ 和 Python、Java 相比如何?这么说吧,C++ 就像是一辆跑车,极具性能;Python 就像一辆大货车,跑得慢但是装的量大;而 Java 会比 Python 快,但比 C++ 慢。










