使用自定义类时,USE处引用了它的祖(50分)

F

fyzxm

Unregistered / Unconfirmed
GUEST, unregistred user!
我定义了类A,从类A中派生出类B,然后在程序C中使用了类B,结果C中的USE中把我的类A
也加了进来,如果我从类A中连续派生N次,C中就要加入N个收用了,如何做才能让C的USE
中只引用我使用的类而不加入它的祖类?
 
在implementation下的uses里加上他的祖先类!
 
楼上哥们厉害,我都没看明白楼主说的什么意思
 
uses有两个地方可以声明
一个是interface 下面
一个是implement 下面
两者还是略有区别的
 
我也没看懂~
 
我再说的明白点:
unit A
TA=class(Tcomponent)
.....

UnitB
TB=class(TA)
.....

unit c
uese
B,A......
.....

我在UNIT C中只用到了控件B,结果在USE中A也被加入了。
A与B两个控件都被我注册了,同在一个包中。

在我删除B后,DELPHI没有自动的清除USE中的引用。
 
什么是“删除B”
什么叫“自动清除USE中的引用”?
 
不可能的,你看DELPHI当你删除一个控件后,他相关的引用没有被删掉 !
 
如果是A调用了B,B又调用了A的话。就分开写。
 
来自:张无忌, 时间:2003-4-11 9:13:00, ID:1757972
不可能的,你看DELPHI当你删除一个控件后,他相关的引用没有被删掉 !

DELPHI自带的它会删,但你可以试试自已写的控件
 
萧军, 时间:2003-4-11 9:36:00, ID:1758078
如果是A调用了B,B又调用了A的话。就分开写。

我已说了,TB=Class(TA),就是说B类是A类的子类


 
我想说的不是循环引用,而是类的继承问题。TB=Class(TA),就是说B类是A类的子类。
在程序中我只用到了类B,结果,UNIT 的use 中A被DELPHI自动加入了。
 
顶部