Achso, dann mal mit TValue versuchen.
Delphi-Quellcode:
Result := TValue(42).AsType<T>;
Result := TValue(42).Cast<T>;
...
Result := TValue(42).AsType<T>;
Das Funktioniert. Sieht für mich sogar eleganter aus, als die Pointer-Geschichte. Danke.
Kann man machen, aber je mehr ich den Typen in der generischen implementation einschränke, je wenige ist das object "generisch"...
Dann gibt dem Object doch lieber ein Interface mit der entsprechenden Konvertierung mit...