- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DELPHI 的编译指令
{$IFDEF WIN32} -- 这可不是批注喔 !
对于 Delphi 来说﹐左右大括号之间的内容是批注﹐然而 「{$ 」( 左括号后紧接着货币符号 ) 对于
Compiler( 编译器 ) 而言并不是批注﹐而是写给 Compiler 看的特别指示。
应用时机与场合
Delphi 中有许许多多的 Compiler Directives( 编译器指令 ) ﹐这些编译指令对于我们的程序发
展有何影响呢 ? 它们又能帮我们什么忙呢 ?
Compiler Directive 对程序开发的影响与助益 , 可以从以下几个方向来讨论 :
协助除错
版本分类
程序的重用与管理
设定统一的执行环境
协助除错
稳健熟练的程序设计师经常会在开发应用系统的过程中﹐特别加入一些除错程序或者回馈验算
的程序﹐这些除错程序对于软件品质的提升有极其正面的功能。 然而开发完成的正式版本中如果
不需要这些额外的程序的话﹐要想在一堆程序中找出哪些是除错用的程序并加以删除或设定为
批注﹐不仅累人﹐而且容易出错﹐况且日后维护时这些除错程序还用得着。
此时如果能够应用像是 $IFDEF 的 Compiler Directives ﹐就可以轻易的指示 Delphi 要/ 不要
将某一段程序编进执行文件中。
同时﹐ Compiler 本身也提供了一些错误检查的开关﹐可以预先对程序中可能的问题提醒程序
设计师注意﹐同样有助于撰写正确的程序。
版本分类
除了上述的除错版本 / 正式版本的分类之外﹐对于像是「试用版」「普及版」「专业版」的版本
分类﹐也可以经由 Compiler Directive 的使用﹐为最后的产品设定不同的使用权限。 其它诸如
「中文版」「日文版」「国际标准版」等全球版本管理方面﹐同样也可以视需要指示 Delphi 特
别连结哪些资源档或者是采用哪些适当的程序。 以上的两则例子中﹐各版本间只需共享同一份程
序代码即可。
Delphi 1.0 与 Delphi 2.0 有许多不同之处﹐组件资源文件 (.DCR) 即是其中一例﹐两者的档
案格式并不兼容﹐在您读过本文之后﹐相信可以写出这样的程序﹐指示 Delphi 在不同的版本采
用适当的资源文件以利于组件的安装。
{$IFDEF WIN32}
{$R XXX32.DCR}
{$ELSE}
{$R XXXX16.DCR}
{$EDNIF}
程序的重用与管理
经过前文的讨论后﹐相信你已经不难看出 Compiler Directives 在程序管理上的应用价值。对
于原始程序的重用与管理﹐也是 Compiler Directives 使得上力的地方 . 举例来说 :
Pascal-Style 字符串是 Delphi 1.0 与 Delphi 2.0 之间的明显差异﹐除了原先的短字符串之外
﹐Delphi 2.0 之后还多了更为方便使用的长字符串﹐同时﹐系统也额外提供了像是 Trim() 这
样的字符串处理函式。假如您有一个字符串处理单元必须要同时应用于 Delphi 1.0 与 2.0 的
项目时﹐编译指示器可以帮你的忙。
此外﹐透过像是 {$I xxxx} 这样的 Compiler Directives ﹐我们也可以适当的含入某些程序 ,
同样有助于切割组合我们的程序或编译设定。
设定一致的执行环境
项目小组的成员间﹐必须有共同的环境设定﹐我很难预料一个小组成员间彼此有不同的
{$B}{$H}{$X} 设定﹐最后子系统在并入主程序时会发生什么事。
此外 , 当您写好一个组件或单元需要交予第三者使用时 , 使用编译指示器也可以保证组件使用
者与您有相同的编译环境。
使用 Compiler Directives
指令语法
Compiler
您可能关注的文档
- 产品销售代理合作合同协议书汇编.doc
- 保后监管表资料.pdf
- 保护城市环境演讲稿汇编.pdf
- 保护地球保护环境演讲范文3篇汇编.pdf
- 保护环境卫生知识.pdf
- CMSPro交互式应用使用指南资料.pdf
- configure配置参数资料.pdf
- COPD的定义、发病机制和病生理汇编.pdf
- CPM的技能操作(2018.3.20)资料.pdf
- CRM能力成熟度模型评估体系知识.pdf
- 成人居家口腔护理指南.pptx
- 《手术室护理中快速康复外科理念对患者术后生活质量的影响研究》教学研究课题报告.docx
- 欧曼工程车内饰改装方案(3篇).docx
- 成批伤的急救处理.pptx
- 社交媒体在初中道德教育中的应用与效果评估教学研究课题报告.docx
- 3 《绿色供应链管理在制造业企业中的绿色供应链与绿色技术创新协同研究》教学研究课题报告.docx
- 1 《基于课程思政的职业院校专业教学创新研究》教学研究课题报告.docx
- 《电影院品牌形象塑造与顾客口碑传播策略研究》教学研究课题报告.docx
- 数字教育资源在初中化学教学中的创新应用与效果评估教学研究课题报告.docx
- 2024医疗卫生系统人员考试历年机考真题集附答案详解【A卷】.docx
最近下载
- GB 44022-2024硝酸铵安全技术规范解读.pptx VIP
- 在线网课学习课堂《人工智能与生物特征识别(北理 )》单元测试考核答案.pdf VIP
- Unit 5 Is this your pen (说课稿)-2024-2025学年湘少版(三起)(2024)英语三年级上册.docx VIP
- 《基坑工程》重力式水泥土墙.pptx VIP
- 人工智能导论知到课后答案智慧树章节测试答案2025年春浙江师范大学.docx VIP
- 2024年饮品店项目创业投资方案.docx
- 生命的律动答案.docx
- 300T汽车吊性能说明书-XCA300_1全地面起重机技术规格书+[主臂风电臂加超起].pdf VIP
- 导尿管相关尿路感染预防与控制课件.pptx VIP
- 历史的天空2015全图文攻略.pdf VIP
文档评论(0)