Einzelnen Beitrag anzeigen

Benutzerbild von ManuMF
ManuMF

Registriert seit: 11. Jul 2005
1.016 Beiträge
 
Delphi 6 Personal
 
#6

Re: function mit zwei Rückgabewerten?

  Alt 24. Aug 2006, 10:57
Ich hätte auch ein Record vorgeschlagen, aber als Rückgabewert:
Delphi-Quellcode:
// Typendefinition
type
  TStringAndInt = Record
    rString: String;
    rInteger: Integer;
  end;

// Irgendwo im Code ;-)

function Test: TStringAndInt;
begin
  result.rString := 'Test';
  result.rInteger := 123;
end;

// Und zum Ausführen

procedure TForm1.Button1Click(Sender: TObject);
var
  Rueckgabe: TStringAndInt;
begin
  Rueckgabe := Test;
  Showmessage(Rueckgabe.rString + ' ' + IntToStr(Rueckgabe.rInteger));
end;
Du musst dazu wie oben im code in der Prozedur / Funktion, die etwas mit dem Rückgabewert machen soll, diesen noch mal als Variable definieren, sonst musst du deine Funktion mehrfach aufrufen:
Showmessage(Test.rString + ' ' + IntToStr(Test.rInteger)); Aber das geht natürlich auf Kosten der Geschwindigkeit.
Gruß,
ManuMF

Endlich hab ich was Positives an Vista entdeckt: Das mitgelieferte Mahjongg
  Mit Zitat antworten Zitat