类方法的使用

I

import

Unregistered / Unconfirmed
GUEST, unregistred user!
类方法的使用
  类方法(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;
  即可直接完成调用……是否很爽^_^
 
顶部