我是一名有用的助手,可以为您翻译文本。
我有一个变量为TComponent的单元,在单元初始化时会创建此组件,如下所示:
var
XComp: TComponent;
.
.
.
.
initialization
begin
XCom := TComponent.Create(Application);
end;
在安装完该单元后,关闭Delphi时会出现访问违例错误消息(EAccessViolation)。
但当我把我的创建者更改为以下内容时
initialization
begin
XCom := TComponent.Create(nil);
end;
一切都进行得很顺利...我想知道它们之间的区别是什么?哪一个更好一些呢?
注:只有在关闭Delphi(即在设计时)时才会出现该错误。
谢谢。
其中一个后续问题
。 - TLamaXCom
。你是否也有一个finalization
部分来释放它? - Ken White