C++ Information: History of C++

C++官网参考链接History of C++ - C++ Information (cplusplus.com)

C++的历史
C++编程语言的历史可以追溯到1979年,当时Bjarne Stroustrup正在写他的博士论文。Stroustrup有机会使用的语言之一是一种名为Simula的语言,顾名思义,这是一种主要为模拟设计的语言。Stroustrup使用的Simula 67 语言(The Simula 67 language被认为是第一种支持面向对象编程范式的语言。Stroustrup发现这种模式对于软件开发非常有用,但是Simula语言对于实际使用来说太慢了。 
此后不久,他开始研究“具有类(class)的C”,顾名思义,这是C语言的一个超集。他的目标是将面向对象编程添加到C语言中,C语言过去和现在都因其可移植性而备受推崇,同时又不牺牲速度和底层功能。他的语言除了C语言的所有特性之外,还包括类(classes基本继承(inheritance内联(inlining默认函数实参(default function arguments强类型检查。第一个带有类编译器的C语言叫做Cfront,它是由一个叫做CPre的C编译器派生出来的。这是一个旨在将具有类(class)的C语言代码转换为普通C语言的程序。
值得注意的是,Cfront主要是用带类的C语言编写的,这使它成为一个自托管编译器(可以编译自己的编译器)。Cfront后来在1993年被放弃了,因为很难将新的特性集成到Cfront中,也就是C++异常(exceptions。尽管如此,Cfront对未来编译器的实现和Unix操作系统产生了巨大的影响。
1983年,语言的名称从C with Classes改为C++。C语言中的++操作符是一个递增变量的操作符,这让我们对Stroustrup如何看待这门语言有了一些了解。这个时期增加了许多新特性,其中最值得注意的是虚函数(virtual functions)、函数重载(function overloading)、带有&符号的引用、const关键字以及使用两个正斜杠的单行注释(这是BCPL语言的一个特性)。
1985年,Stroustrup发表了一篇题为The C++ Programming Language的文章。同年,C++被实现为商业产品。这种语言还没有正式标准化,这使得这本书成为一个非常重要的参考资料。1989年,该语言再次进行了更新,包括受保护(protected)成员和静态(static)成员,以及对几个类的继承
1990年,The Annotated C++ Reference Manual发布。同年,Borland的Turbo C++编译器将作为商业产品发布。Turbo C++添加了大量额外的库,这些库对C++的开发有相当大的影响。尽管Turbo C++的最后一个稳定版本是在2006年,但编译器仍然被广泛使用。
1998年,C++标准委员会发布了第一个C++国际标准C++ ISO/IEC 14882:1998,它被非正式地称为C++98。据说,The Annotated C++ Reference Manual对标准的发展产生了很大的影响。标准模板库(The Standard Template Library于1979年开始其概念发展,它也包括在内。2003年,委员会根据1998年的标准对多个问题做出了回应,并对标准进行了相应的修订。改变后的语言被命名为C++03
2005年,C++标准委员会发布了一份技术报告(命名为TR1),详细描述了他们计划添加到最新C++标准中的各种特性。新标准被非正式地命名为C++0x,因为它预计将在第一个十年结束前的某个时候发布。然而,具有讽刺意味的是,新标准直到2011年中期才发布。在此之前发布了一些技术报告,一些编译器开始为新特性添加实验性支持。
在2011年中期,新的C++标准( the new C++ standard(被称为C++11)完成了。Boost库项目(Boost library project对新标准产生了相当大的影响,其中一些新模块直接派生自相应的Boost库。一些新特性包括正则表达式支持(可以在这里(here找到关于正则表达式的详细信息),一个全面的随机化库、一个新的C++时间库原子支持、一个标准线程库(直到2011年C和C++都没有)、一个新的for循环(for loop语法提供类似在某些其他语言中foreach循环的功能、auto关键字、新的容器类,更好地支持联合(union)数组初始化列表以及可变模板

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_40186813

你的能量无可限量。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值