Zitat von
Tryer:
Das Du nich alles auf Variants umstellen willst kann ich verstehen, der Aufwand wäre dann wirklich enorm. Komfort vs. Performance, da gibts halt wenig Kompromisse
Ja leider... Ich versuch da grad nen vertretbaren Mittelweg zu finden
Zitat von
Tryer:
Mal nen Schnellschuss zu den Variablen:
Double, TComplex und TQuat sollten sich doch auf das folgende TNumber casten lassen (was dann bei jeder Zuweisung nötig wäre)
Delphi-Quellcode:
type
TNumber = array [0..0] of Double;
TDummy = class
protected
procedure SetVariable(VarName: string; const Value: TNumber);
function GetVariable(VarName: string): TNumber;
public
NumberFormat: TNumberFormat;
property Variable[VarName: string]: TNumber read GetVariable write SetVariable;
end;
Ohne gemeinsame Basisklasse für die Variablen sehe ich keine andere Chance um sie unter einen Hut zu bekommen.
MfG,
Tryer
Das sieht an sich schon mal ganz nett aus; zumal ich dieses Konstrukt bei den properties noch nie gesehen hab! Das geht? Oder ist das Pseudocode?
Dann müsste ich zwar trotzdem an meinen Typen TComplex und TQuat drehen (die sind z.Zt. nen record und kein array), aber das
könnte gehen, so denn der Cast klappt! Einziger kleiner Nachteil: Das Berechnen des Baumes mit reellen Zahlen dürfte langsamer werden. Hab dann ja keinen nativen Datentyp mehr, sondern "nur" Zeiger drauf, oder guck ich komisch?
Aber das ließe sich evtl. verschmerzen. Im Moment ist der Parser bei double-Typen ca. 0,6 Mal so schnell wie eine hardgecodete Berechnung. Das ist gut genug, um davon ein klein wenig abzugeben
(Wenn ich das jetzt total missverstanden hab, dann schrei ganz laut - ich geh' dann in die Ecke, gell!?)
@Christian: Naja, aber das overload; ist ja genau das
Gegenteil von dem was ich gerne hätte. Ich möchte ja
eine Implementierung mit mehreren möglichen Deklarationen, und nicht
mehrere Prozedurrümpfe, jeweils für einen Fall gesondert
Oder hab ich dich verstanden Mist?
grüzli,
dizzy
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel