- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2 章 学好面向对象的Pascal 37
而且持续了二十年之久。这意味着无法意外地忽略数据类型的潜在不兼容
性,编译器是不会让您通过的。同样的,全局变量也不再广泛使用。当需
第2 章 学好面向对象的Pascal 要整数、字符、字符串时,在您提供该类型变量之前,编译器会不停地对
此进行抱怨。某些软件工具厂家看上去仍然不想放弃。在Windows API 、
Visual Basic 还有许多其他地方,前缀充斥其中。由于前缀如此之多,以
至于要定义并维护一个标准是不可能的。很幸运,在 Inprise 公司没有那
好的工具是好的开发的基石。Object Pascal 就是好的工具。基于上一 种令人压抑的、无法解释或领会的前缀。Delphi 是个伟大的编译器:只要
章或您已有的技巧,本章将示范每个程序都需要的面向对象技巧。Delphi 遵守本章的策略,您就不需要前缀。
在开发工具中是个例外,它本身就是用Object Pascal 创建的。本章中包含
2.1.1 少就是多
了一些代码,它将成为每一个程序的基础。
Delphi 不强制要求前缀命名惯例,但确实采用了简单而有限的前缀,
2.1 Delphi 的惯例 用以表明数据的目的而非其类型。在下列情况下,命名惯例是有用的:存
在对变量名长度的限制、结构化编程需要全局数据、编译器无法捕捉数据
误用。很多年来,这些情况已不复存在。对象可消除全局变量的使用,变
大约25 年前,C 语言是当时的新事物。那时的编译器,像 C 语言,
是弱类型的。变量可以被声明为指针,然后传给整型参数,反过来也可以。 量名长度已经没有限制,编译器已不再允许数据误用。这样,Delphi 就避
免了复杂的前缀记号。您可以把注意力集中于编程技巧,而不是对前缀的
例如,一个整型变量可以被赋值0,然后被粗心地赋值给char* (在C 中,
记忆。
即指向字符的指针)变量。原因是,编译器并不严格执行数据类型的用法,
时至今日依然如此。不管怎么说,数据只是一些数字嘛。可问题在于,如 2.1.2 最好的习惯
果把整数当作指针使用,可能刚好存取到 BIOS (基本输入输出)内存的
在古老的格言中,给人一条鱼,他只能吃一天;教给他捕鱼的技术,
起始地址,真是糟糕透顶。另一个有害的问题是全局变量。如果不作检查,
他一辈子都能够吃鱼,格言中的道理在这里很适用。即使学了两打的前缀,
大多数人都记不住在一个月之前声明的变量的数据类型;当变量在其他人
文档评论(0)