Zitat von
xineohp:
@Nothine: funzt das auch mit records?
nein, bzw. um es richtig zu stellen, nur bei records mit nur einem feld, mehrere felder scheint er nicht mehr zu prüfen, aber z.B.
Delphi-Quellcode:
//in verbindung mit obigem post
var D: string;
C: Integer;
A,B: record
X: string;
end;
const F: array[Boolean] of string[5] = ('False','True');
begin
A.X := 'bla'; B.X := 'möp'; C := 5; D := 'tee';
Edit1.Text := F[CheckTrue(A,B,C,D)];
end;
funktioniert... nur wenn ich beispielsweise noch ein record-feld Y vom typ integer hinzufüge und unterschiedliche werte zuweise, spuckt er trotzdem true aus... [Edit2] da er nur das erste feld prüft, DAS wird aber korrekt ausgewertet... [/Edit2]
//Nachtrag: ich hab es grad mit sowohl einer eigenen von TObject abgeleiteten klasse als auch mit TStringList probiert, aber da bekomm ich nur
access violations, dementsprechend dürfte diese (zugegeben merkwürdige
) funktion nur auf einfache datentypen anwendbar sein...
//Und noch ein Edit: der vergleich zwischen A und B kann NUR dann positiv ergeben, wenn sie vom selben typ sind... also A: Byte = 1 und B: Integer = 1 is nich, da sagt er gnadenlos FALSE