Delphi XE2中的命名空间
我有两个bpl包:Core和Business,由一个应用程序使用.
Core.bpl包含单元User.pas,其中包含TUser类. Core.bpl中的TUser只有两个基本字段:Login和Password. 我想在Business包中使用新字段扩展TUser类:UserName.我想将业务部门命名为基本单位:User.pas. 因此,我在Business.bpl中创建了一个新的User.pas单元,并放置了从Core.bpl扩展TUser的TUser类. 我已经阅读了Embarcadero doc page.他们说可以为包命名设置默认命名空间,例如Base.Core. 现在我在模块User.pas中有两个类TUser:一个在Base.Core.bpl包中,另一个在包Extra.Business.bpl中. unit User; interface uses Base.User; type TUser = class(Base.User.TUser) end; 但是当我想编译它时,我有一个窗口:“删除用户.单位用户在必需的包中找到.” 我有什么办法从Base.User.TUser继承新的TUser,例如它可以在Java中? 附:为了以防万一,我使用Delphi XE2 IDE. 解决方法
默认命名空间似乎是Portal蛋糕 – 这是谎言.您链接到的文档与该程序不匹配.
我制作了这个节目: MyCompany.Programs.MyProgram.dpr program MyCompany.Programs.MyProgram; uses MyUnit in 'MyUnit.pas'; begin end. MyUnit.pas unit MyUnit; interface implementation end. 生成的.dcu文件名为MyUnit.dcu.根据您链接到它的文档应该命名为MyCompany.Programs.MyUnit.dcu. 我相信您必须在单元名称中明确指定名称空间. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |