Einzelnen Beitrag anzeigen

Gambit

Registriert seit: 28. Mai 2003
680 Beiträge
 
Delphi 7 Professional
 
#1

[OOP]: Instanzierung ohne Konstruktoraufruf

  Alt 4. Sep 2004, 10:09
Moin,

ich hab mir da mal ne ganz kleine Klasse geschrieben:

Delphi-Quellcode:
unit Unit2;

interface

type
  TMyClass = class(TObject)
    function add(a,b: Integer) :Integer;

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;


implementation

function TMyClass.add(a,b: Integer) :Integer;
begin
  result:= a+b;
end;

end.
Soweit so gut. Folgende Form einer Anwendung verwendet dann diese Klasse:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Unit2, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    addiere:TMyClass;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  showMessage(IntToStr(addiere.add(1,6)));
end;

end.
Ich vestehe nicht, dass das so funktioniert, ich dachte immer, ich müsste zunächst ein Objekt der Klasse instanziieren, ehe ich damit arbeiten kann. Also irgendwie fehlt mit im obigen Code ein:
addiere:= TMyClass.create Kann mir da mal jemand OOP-mäßig auf die Sprünge helfen?

Gruß

Gambit
  Mit Zitat antworten Zitat