大佬教程收集整理的这篇文章主要介绍了如何避免在Delphi中使用insert namespace,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如果新Delphi出现问题,我们希望将旧版本作为备份.
我在单元dmActions.pas中的问题是从TDataModule继承的单元.
uses // VCL ActnList,ActnMan,Classes,Controls,Forms,Graphics,ImgList,Menus,SysUtils,XPStyleActnCtrls,Variants,{$IFDEF BOLD_DELPHI16_OR_LATER} System.ImageList,System.Actions,{$ENDIF} BusinessClasses;
Delphi IDE无法理解我的IFDEF,因此会自动为此插入缺少的单元
uses // VCL ActnList,{$ENDIF} BusinessClasses,System.ImageList,System.Actions;
但这不会在柏林用这条消息编译
[dcc32 Error] dmActions.pas(36): E2004 Identifier redeclared: 'System.ImageList' [dcc32 Error] dmActions.pas(36): E2004 Identifier redeclared: 'System.Actions'
当然,“System.ImageList,System.Actions”不在D2007中编译.@H_607_17@那么解决这个问题的最佳方法是什么?
为此,您必须将映射添加到Delphi 2007项目的单元别名中,如下所示:
System.SysUtils=SysUtils System.Classes=Classes
对于Delphi 2007中不存在的单元,就像您在帖子中提到的单元一样,只需映射到现有单元:
System.Actions=ActnList System.ImageList=ImgList
作为一个好处,您最终会使用不含IFDEF的使用条款.
以上是大佬教程为你收集整理的如何避免在Delphi中使用insert namespace全部内容,希望文章能够帮你解决如何避免在Delphi中使用insert namespace所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。