前 言
在所有的编程语言中,C++可以说是最为复杂的,它既是一门传统的编程语言,也是一门新的编程语言。
说它是一门传统语言,是因为C++诞生已将近20年的历史了,特别是最近10年来C++得到了快速的发展。C++是计
算机软件领域中覆盖面最为广阔的编程语言,并且,与C++相关的智力投入也是其他任何一门语言所无法比拟的。人们对于C++的研究已经远远超出了对于一门编程语言所应有的关注。所以,现在的C++已经非常成熟,有大量的资源(文档、书籍、源代码等等)可供我们使用。
说它是一门新的编程语言。是因为在1998年C++由国际标准化组织ISO(International Standards Organization)完成了标准化,从此C++领域有了统一的标准。所有的编译器都将向标准靠拢(或者说,与标准兼容),这有利于我们写出可移植的C++代码来。同时C++标准也统一了C++标准库,为C++用户提供了最为基本的基础设施。C++经历了多年的发展,终于有了一个相对稳定的版本,所以,我们应该用一种新的眼光来看待C++,而不再简单地把C++认为是C语言的超集。通过本书,读者可以重新审视C+十语言。
随着计算机技术的不断进步,电脑游戏作为一种大众娱乐被人们广泛的接受,因此游戏程序设计工作需要越来越多的程序员加入近来,由于游戏的特殊性,使得对游戏编程语言的要求显得相当苛刻,而C++作为游戏编程语言是最为恰当不过的了。
C++的许多威力来自于它对程序设计新方法的支持,以及对程序设计问题的思考方式。因此,要想有效地学习使用C++,不只要求简单地学会一组新的语法和语义。为了使这种学习C++更加容易,本书将围绕一系列游戏编程的小例子来组织内容。这些例子被用来介绍各种语言特性的细节,同时也说明了这些语言特性的动机所在。尤其在比较难于理解的指针,引用以及面向对象程序设计部分,所使用的例子均为游戏程序中用到的小程序片段,通过这些例子,读者可充分掌握C++对应的知识点,同时也能深刻理解如何在游戏程序中使用C++。把焦点放在例子上,可使读者能够尽早地使用一些概念,随着读者的知识基础被建立起来之后,这些概念会被进一步完整地解释清楚。本书初期的例子含有C++基本概念的简单用法,读者可以先领略一下C++中程序设计的概貌,而不要求完全理解C++程序设计和实现的细节
编者于北京