我的一个类是这么声明的:
type
  Tsa = class(TObject)
  private
    FTimerAlert: TTimer;
  public
    constructor Create;
    destructor destroy;
  end;
我的Create和destroy是这么写的:
implementationconstructor Tsa.Create;
begin
  FTimerAlert:= TTimer.Create(self);
end;destructor Tsa.destroy;
begin
  FTimerAlert.Free;
end;我想知道把如上的FTimerAlert定义为private可以么?还有  FTimerAlert:= TTimer.Create(self);这条语句不能通过,那么我应该怎么写才能将FTimerAlert实例化呢?(还是FTimerAlert自动的已经实例化了?)多谢多谢!

解决方案 »

  1.   

    FTimerAlert:= TTimer.Create(nil);
      

  2.   

    谢谢楼上两位帮忙!还有个问题--如果FTimerAlert:= TTimer.Create(nil)这样,那么我的destroy这样写可以吗?
    destructor Tsa.destroy;
    begin
      FTimerAlert.Free;
    end;还用不用加上inherited Destroy;?再次谢谢
      

  3.   

    destructor destroy;override;
    destructor Tsa.destroy;
    begin
      inherited;
      try
        FTimerAlert.Enabled:= false;
        FTimerAlert.Free;
      except
      end;
    end;