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
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