C++简史
来源:互联网 发布:淘宝网网游交易平台 编辑:程序博客网 时间:2024/06/06 11:01
闲来无聊,对History of C++中描述的C++简史进行了翻译,不准确的地方敬请谅解
-----------------------------------------分割线,翻译开始
C++的历史可以追溯到1979年,当时 Bjarne Stroustrup正在做他的博士论文,并且能够使用的唯一一种编程语言就是Simula(一种用来进行仿真的编程语言)。Simula67是公认为的第一种面向对象的编程语言,在使用过程中,Stroustrup发现使用面向对象的方法进行软件开发有很多益处,但Simula语言太过笨重,不适用于实际应用。
正是出于这个原因,Stroustrup开始对C语言进行改进,在C语言的基础上添加了类、基本的继承、内联、默认参数和强类型检查机制,并且尽可能的保持C语言的性能。
第一个支持面向对象的C编译器称作Cfront,是从传统C编译器CPre基础上发展而来的。当时Cfront是通过将面向对象的C代码转换为面向过程的C代码,然后再编译成机器代码来实现面向对象C的编译的。并且,Cfront使用面向对象的C进行编写的。但是,由于Cfront的扩展性不是很强,加入新的特性很是困难(例如C++中的异常),所以在1993年就不在使用了。
1983年,C++语言正式出现了。之所以称之为C++是取自++操作符在C中的寓意,代表C++是在C基础之上发展起来的。与此同时,在C++中又加入了很多特征,包括:重载、引用、‘const’关键字、单行注释(从BCPL中借鉴来的)等等。
1985年,Stroustrup出版了C++的参考书《 The C++ Programming Language 》。同年,C++在商业标准下进行了实现,但由于此时C++还不具备官方标准,所以那本书成为了重要的参考手册。在1989年,C++中又加入了protected和static关键字,同时加入了多继承机制(从多个类继承)。
1990年,《The Annotated C++ Reference Manual》参考手册出版了。同年发布了Turbo C++编译器,其中加入了很多标准库之外的支撑库。尽管Turbo C++在2006年就不在进行开发了,但对C++的发展产生了巨大的影响。
1998年,在《The Annotated C++ Reference Manual》推动之下,第一个C++国际标准出炉: C++ ISO/IEC 14882:1998。C++98的STL(The Standard Template Library,标准库)包含了自1979年开发的所有标准。2003年,根据各方面收集的C++ bugs报告,C++标准协会对C++进行了修订,发布了C++03标准。
2005年,C++标准协会发布了一份技术报告,报告中描述了即将加入到C++中的新特征,并且将新的标准命名为C++0x,希望能够在20世纪头十年中发布这个标准。然而这个标准的定制直到2011年才完成。但在标准发布之前,很多编译器已经加入了对此标准的新特征的支持。
2011年,C++11标准终于完成了。这些新的特征包括:正则表达式、新的随机数库、新的时间库、atomics support、线程库、新的for循环方式(类似于foreach)、auto关键字、新的容器类、更好的支持unions和array-initialization lists,以及 variadic templates。
Written by Albatross.
-----------------------------------------分割线,翻译结束
翻译成中文挺少的,有兴趣的就看看吧~~~^_
-----------------------------------------分割线,翻译开始
C++的历史可以追溯到1979年,当时 Bjarne Stroustrup正在做他的博士论文,并且能够使用的唯一一种编程语言就是Simula(一种用来进行仿真的编程语言)。Simula67是公认为的第一种面向对象的编程语言,在使用过程中,Stroustrup发现使用面向对象的方法进行软件开发有很多益处,但Simula语言太过笨重,不适用于实际应用。
正是出于这个原因,Stroustrup开始对C语言进行改进,在C语言的基础上添加了类、基本的继承、内联、默认参数和强类型检查机制,并且尽可能的保持C语言的性能。
第一个支持面向对象的C编译器称作Cfront,是从传统C编译器CPre基础上发展而来的。当时Cfront是通过将面向对象的C代码转换为面向过程的C代码,然后再编译成机器代码来实现面向对象C的编译的。并且,Cfront使用面向对象的C进行编写的。但是,由于Cfront的扩展性不是很强,加入新的特性很是困难(例如C++中的异常),所以在1993年就不在使用了。
1983年,C++语言正式出现了。之所以称之为C++是取自++操作符在C中的寓意,代表C++是在C基础之上发展起来的。与此同时,在C++中又加入了很多特征,包括:重载、引用、‘const’关键字、单行注释(从BCPL中借鉴来的)等等。
1985年,Stroustrup出版了C++的参考书《 The C++ Programming Language 》。同年,C++在商业标准下进行了实现,但由于此时C++还不具备官方标准,所以那本书成为了重要的参考手册。在1989年,C++中又加入了protected和static关键字,同时加入了多继承机制(从多个类继承)。
1990年,《The Annotated C++ Reference Manual》参考手册出版了。同年发布了Turbo C++编译器,其中加入了很多标准库之外的支撑库。尽管Turbo C++在2006年就不在进行开发了,但对C++的发展产生了巨大的影响。
1998年,在《The Annotated C++ Reference Manual》推动之下,第一个C++国际标准出炉: C++ ISO/IEC 14882:1998。C++98的STL(The Standard Template Library,标准库)包含了自1979年开发的所有标准。2003年,根据各方面收集的C++ bugs报告,C++标准协会对C++进行了修订,发布了C++03标准。
2005年,C++标准协会发布了一份技术报告,报告中描述了即将加入到C++中的新特征,并且将新的标准命名为C++0x,希望能够在20世纪头十年中发布这个标准。然而这个标准的定制直到2011年才完成。但在标准发布之前,很多编译器已经加入了对此标准的新特征的支持。
2011年,C++11标准终于完成了。这些新的特征包括:正则表达式、新的随机数库、新的时间库、atomics support、线程库、新的for循环方式(类似于foreach)、auto关键字、新的容器类、更好的支持unions和array-initialization lists,以及 variadic templates。
Written by Albatross.
-----------------------------------------分割线,翻译结束
翻译成中文挺少的,有兴趣的就看看吧~~~^_
- C语言发展简史
- C语言的简史
- [转]C语言发展简史
- 附录C Java编程简史
- 简史
- Unix与C语言的诞生简史
- 【C语言基础】1-1计算机简史
- 再谈C语言的学习(三)──C语言简史的简史
- 吸血鬼简史
- UML简史
- 《思科简史》
- 罗马帝国简史
- BSD简史
- UNIX 简史
- XQuery简史
- 黄金简史
- Linux简史
- Linux简史
- LBA硬盘模式
- vc 注册表改网络设置立即生效
- spinlock分析
- 安卓平台使用sqlite
- sdau 省赛热身4 C - Counting Pair
- C++简史
- java.io.NotSerializableException: com.sysway.presentationmodel.NotifiableList
- Socket I/O模型
- sdau 省赛热身4 K - King's Sanctuary
- 不是抽象的,并且未覆盖 com.sysway.boss.service.internal.party.role.partyroleservice 中的抽象方法
- 从欧洲对中国太阳能征收惩罚性关税谈起
- 这是自己的第一篇日志,纪念一下
- 高端洋气上档次的终端控--tmux
- 提高PHP编程效率的53个要点