Thema: Delphi Ist das schon Klasse?

Einzelnen Beitrag anzeigen

Gonzo2

Registriert seit: 4. Nov 2007
42 Beiträge
 
#1

Ist das schon Klasse?

  Alt 4. Nov 2007, 16:19
Ich fange mit Delphi und Klassen erst an und verstehe noch nicht alles. Ist das hier schon eine Klasse?

Delphi-Quellcode:
type
  TTestClass = class(TObject)
  public
    procedure Hallo(Sender: TObject);
  end;

var
  Test: TTestClass;

procedure TTestClass.Hallo(Sender: TObject);
begin
  ShowMessage('Hallo Welt');
end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Test.Hallo(Sender);
end;
Und was mich vor allem interessiert und ich mir nicht erklären kann, wenn das eine Klasse ist, wieso brauche ich kein Create? Das funktioniert zwar auch

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Test := TTestClass.Create;
  Test.Hallo(Sender);
  Test.Free;
end;
aber brauchen tue ich es anscheinend nicht. Wenn ich mit einer Bitmap arbeiten will und sie ohne Create nutzen will, dann gibt es eine Fehlermeldung. Wieso kann ich hier eine Klasse sofort nutzen? Wieso kann ich hier Create nutzen, kann es aber auch lassen?
  Mit Zitat antworten Zitat