首页  编辑  

类方法的使用

Tags: /超级猛料/Language.Object Pascal/面向对象和类、VCL核心/   Date Created:

类方法的使用

  类方法(Class methods)是一类特殊的方法,它们在声明时要以class开头

  type

  TFigure = class

  public

  ...

  class procedure GetInfo(varInfo:TFigureInfo); virtual;

  ...

  end;

  实现时也以class开头

  class procedureTFigure.GetInfo(varInfo:TFigureInfo);

  begin

  ...

  end;

  (具体意义请自行查看帮助)

  乍一看好象平时没有遇到过这个东东,也没有看到过谁用过这个东东,好象这个东东也没有什么大作用,其实不然……

  比如我们有时为输入密码或其他常用数据专门做一个form,但由于其代码都在form定义的unit里面,所以在使用时仅仅需要几行代码,比如

  with TfrmPassword.Create(nil) do

  try

  ShowModal;

  finally

  Free;

  end;

  虽然这样的代码已经很简洁,但如果写个十七八个还是很讨厌的。利用类方法可以使其更简洁!一行足以……

  TfrmPassword = class(TForm)

  ...

  public

  { Public declarations }

  class function Execute:TModalResult;

  end;

  ...

  class function TfrmPassword.Execute:TModalResult;

  begin

  with TfrmPassword.Create(nil) do

  try

  Result := ShowModal;

  finally

  Release; //注意此处必须为release不能为free!

  end;

  end;

  然后只用一行

  TfrmPassword.Execute;

  即可直接完成调用……是否很爽^_^