1.3 C++简介
C++语言是美国贝尔实验室的Bjarne Stroustrup博士及同事在C语言的基础上,借鉴了Simula语言面向对象的机制,于20世纪80年代初开发出来的一种过程性和对象性结合的程序设计语言,最初称为“带类的C”,1983年Rick Mascitti将其更名为一个有双关语的符号—“C++”。
1.3.1 C++语言发展历程
最初,Stroustrup使用了一个C++到C的编译器程序,将C++源代码翻译成C代码,然后通过标准的C编译器将其转化成二进制代码,随着C++的日渐普及,才出现了独立的C++编译器,直接将C++代码编译成目标代码,这种方式,突出了C++“由C语言而来,却不同于C语言”的独立地位。
C++灵活而强大的功能,很快就受到了计算机软件商的青睐,并不断对C++进行细化,促进了C++的发展。虽然多数公司和科研单位都希望自己的C++版本能和其他版本兼容,但如果没有一个标准的出台,这将很难做到。为此,美国国家标准局在1990年设立了一个委员会(ANSI X3J16),专门负责C++标准的制定。ANSI/ISO C++国际标准第一版于1998年正式发布,2003年又发布了C++国际标准第2版,新的标准是对第1版的整理—修订错误,减少歧义等,并没有改变语言特性,本书所有介绍和实例代码都是基于新的C++国际标准的。当然,C++还在不断地发展中,下一版的C++标准制定工作已经开始,该版本被称为C++0X,预期完工时间为2009年前后。
遵循ANSI/ISO C++标准编写的C++程序具有很好的可移植性,换言之,使C++程序的设计和编码不再拘泥于不同的操作系统,在Windows下编译无误的代码,在UNIX下同样可以顺利编译并运行。