C++的前身是“C with classes”,由“C++之父”比雅尼·斯特劳斯特鲁普(Bjarne Stroustrup)研发创造。1979年,比雅尼·斯特劳斯特鲁普在准备博士论文的时候使用了Simula语言,其支持面向对象开发。他觉得这种思想非常适合大型应用软件的开发,但是Simula本身的效率太低。之后,斯特劳斯特鲁普就开始研发“C with classes”了。这个命名说明了它是在C语言的基础上研发的,包含了C语言的特性。C语言的执行速度快、效率高,而且可移植性也非常好,因此在C语言的基础上加上类和继承等面向对象的特性之后,将发明出一种新的、效率高且能开发大型软件的强大语言。
“C with classes”的第一个编译器叫作Cfront,它的工作原理是把“C with classes”的代码转换成纯C语言的代码。Cfront的代码大多是用“C with classes”编写的,因为难以集成C++的异常处理机制,所以Cfront在1993年就退出了历史舞台,但Cfront对之后的C++编译器和UNIX都产生了深远的影响。
提示(www.xing528.com)
计算机运行程序时使用的指令是编码过的抽象的二进制序列,而程序员在开发过程中需要一种方便人们理解的高级编程语言,而C++就是这样一种高级语言。将高级编程语言翻译成计算机指令的工具就叫作编译器。不同的编译器支持不同的开发平台,也会对高级编程语言进行不同的优化而生成不同的机器指令。
1983年,“C with classes”改名为“C++”,许多新特性被加入其中,如虚函数、函数重载、const等。1985年,《C++程序设计语言》(The C++ Programming Language)第1版出版,由于没有正式的C++标准,这本书成了当时的重要参考。在此期间,C++又增添了许多功能。1998年,C++编程语言的第一个国际标准——C++ 98标准正式发布,并且将标准模板库STL收录其中。2011年,C++ 11标准问世,该版本添加了许多新功能,简化了许多语法,使C++语言的功能更加强大了。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。