Возможно ли преобразование значения типа в вариант?

вот отрывок, показывающий, чего я пытаюсь достичь:

type
  TMyObject<T> = class (TObject)
    function GetVarType(Value: T): TVarType;
  end;


function TMyObject<T>.GetVarType(Value: T): TVarType;
var
  TmpValue: Variant;
begin
  TmpValue := Variant(Value); //Invalid typecast
  Result := VarType(TmpValue);
end;

Я знаю, что приведенный выше подход с приведением типов наивен, но я надеюсь, что вы уловили идею. Я хотел бы заменить его каким-нибудь механизмом преобразования.

TMyObject всегда будет простого типа, например Integer, String, Single, Double.

Цель такого преобразования состоит в том, что функция VarType дает мне целочисленную константу для каждого простого типа, которую я могу сохранить где-нибудь еще.

Я хотел бы знать, возможно ли такое преобразование?

Спасибо за ваше время.

6
задан Wodzu 25 October 2011 в 15:55
поделиться