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.

-----------------------------------------分割线,翻译结束

翻译成中文挺少的,有兴趣的就看看吧~~~^_
原创粉丝点击