请问大家下面这段代码的含义。我以前学c++,对类引用不太熟。请大家指教。procedure TApplication.CreateForm(InstanceClass: TComponentClass; var Reference);
var
  Instance: TComponent;
begin
  Instance := TComponent(InstanceClass.NewInstance);
  TComponent(Reference) := Instance;
  try
    Instance.Create(Self);
  except
    TComponent(Reference) := nil;
    raise;
  end;
  if (FMainForm = nil) and (Instance is TForm) then
  begin
    TForm(Instance).HandleNeeded;
    FMainForm := TForm(Instance);
  end;
end;
Delphi

解决方案 »

  1.   

    详见《深入核心——VCL架构剖析》“2-4-1 对象创建服务 ”。
      

  2.   

    to s11ss:
        谢谢你的回答,我正在看这本书。第1行的InstanceClass: TComponentClass; var Reference;中的var Reference 是什么意思?还有类引用也不太明白。
      

  3.   

    delphi的引用跟c++引用区别不大(InstanceClass: TComponentClass; var Reference);
    var 相当于 in
    这个Reference 没指定类型,所有什么类型都接受