开发工具:
文件大小: 1mb
下载次数: 0
上传时间: 2009-11-18
详细说明: 我在本书所谈、所用的C++,是ISO/ANSI 标准委员会於1997 年11 月完成的C++国际标准最後草案(Final Draft International Standard)。这暗示了我所使用的某些语言特性可能并不在你的编译器(s) 支援能力之列。别担心,我认为对你而言唯一所谓「新」特性,应该只有templates,而templates 如今几乎已是各家编译器的必备机能。我也运用exceptions,并大量集中於条款9~15。如果你的编译器(s) 未能支援exceptions,没什么大不了,这并不影响本书其他部份 带给你的好处。但是,听我说,纵使你不需用到exceptions,亦应阅读条款9~15,因为那些条款(及其相关篇幅)检验了某些不论什么场合下你都应该了解的主题。 我承认,就算标准委员会授意某一语言特性或是赞同某一实务作法,并非就保证该语言特性已出现在目前的编译器上,或该实务作法已可应用於既有的开发环境上。一旦面对「标准委员会所议之理论」和「真正能够有效运作之实务」间的矛盾,我便两者都加以讨论,虽然我其实比较更重视实务。由於两者我都讨论,所以当你的编译器(s) 和C++ 标准不一致时,本书可以协助你,告诉你如何使用目前既有的架构来模拟编译器(s) 尚未支援的语言特性。而当你决定将一些原本绕道而行的解决办法以新支援的语言特性取代时,本书亦可引导你。 注意当我说到编译器(s) 时,我使用复数。不同的编译器对C++ 标准的满足程度各不相同,所以我鼓励你在至少两种编译器(s) 平台上发展程式码。这么做可以帮助你避免不经意地依赖某个编译器专属的语言延伸性质,或是误用某个编译器对标准规格的错误阐示。这也可以帮助你避免使用过度先进的编译器技术,例如独家厂商才做得出的某种语言新特性。如此特性往往实作不够精良(臭虫多,要不就是表现迟缓,或是两者兼具),而且C++ 社群往往对这些特性缺乏使用经验,无法给你应用上的忠告。雷霆万钧之势固然令人兴奋,但当你的目标是要产出可靠的码,恐怕还是步步为营(并且能够与人合作)得好。 本书用了两个你可能不甚熟悉的C++ 性质,它们都是晚近才加入C++ 标准之中。某些编译器支援它们,但如果你的编译器不支援,你可轻易以你所熟悉的其他性质来模拟它们。 第一个性质是型别bool,其值必为关键字true 或false。如果你的编译器尚未支援bool,有两个方法可以模拟它。第一个方法是使用一个global enum:enum bool { false, true }; 这允许你将参数为bool 或int 的不同函式加以多载化(overloading)。缺点是,内建的「比较运算子(comparison operators)」如==, <, >=, 等等仍旧传回ints。 ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.