C++ 语言历史
C++ 编程语言的历史可以追溯到 1979 年,当时 Bjarne Stroustrup 正在为他的博士论文进行研究。他开始着手开发“带类的 C”(C with Classes),顾名思义,它旨在成为 C 语言的超集。他的目标是将面向对象编程引入 C 语言,C 语言因其可移植性而广受赞誉,并且在不牺牲速度或底层功能的情况下实现了这一点。
除了 C 语言的所有特性外,他的语言还包括类、基本继承、内联、默认函数参数和强类型检查。第一个“带类的 C”编译器称为 Cfront,它源自一个名为 CPre 的 C 编译器。它是一个旨在将“带类的 C”代码转换为普通 C 代码的程序。
1983 年,该语言的名称从“带类的 C”更改为 C++。C 语言中的 ++ 运算符是用于递增变量的运算符,这让我们对 Stroustrup 如何看待该语言有所了解。大约在这个时期,添加了许多新特性,其中最值得注意的是虚函数、函数重载、使用 & 符号的引用、const 关键字以及使用两个正斜杠的单行注释。
1985 年,C++ 作为商业产品推出。该语言尚未正式标准化。该语言在 1989 年再次更新,其中包括受保护成员和静态成员,以及来自多个类的继承。
1990 年,Turbo C++ 作为商业产品发布。Turbo C++ 添加了许多额外的库,这些库对 C++ 的发展产生了相当大的影响。
1998 年,C++ 标准委员会发布了第一个 C++ 国际标准 ISO/IEC 14882:1998,非正式地称为 C++98。标准模板库(Standard Template Library)也包含其中,该库的概念开发始于 1979 年。2003 年,委员会对报告的 1998 年标准中的多个问题做出了回应,并相应地对其进行了修订。更改后的语言被命名为 C++03。
2011 年年中,新的 C++ 标准(C++11)完成。新特性包括正则表达式支持、随机化库、新的 C++ 时间库、原子操作支持、标准线程库、提供类似于某些其他语言中 for each 循环功能的新 for 循环语法、auto 关键字、新的容器类、对联合体和数组初始化列表以及可变参数模板的更好支持。