将构造函数参数分配给对象变量 - Delphi

时间:2016-11-13 07:04:21

标签: delphi

我不断收到错误对话框:

  

模块' XXXX.exe'中地址XXXX的访问冲突。写的   地址XXXX。

我该怎么办?

constructor TCustomClass.Create(ID: Integer);
begin
  self.ID := ID;
end;

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

问题是您正在错误地调用构造函数。你可能正在做类似以下的事情:

var
  LInstance: TCustomClass;
begin
  LInstance.Create(1);
  ...
end;

问题是LInstance尚不存在,但你正在调用一个方法。您需要按如下方式创建实例:LInstance := TCustomClass.Create(1);