5

ここでの最初の質問です。このサイトを見つけてよかったです。

私の質問は、Delphi 2009 の新しい Generics 機能に関するものです。基本的に、既存のハッシュ マップ実装用の汎用ラッパー クラスを作成しようとしました。既存の実装では (String, Pointer) のペアが格納されるため、ラッパー クラスでは、ジェネリック パラメーター型 T と Pointer 型の間でキャストする必要があり、その逆も同様です。

type THashMap <T : class> = class
private
  FHashList   : THashList;
  ...

end;

このようなキャストを考えました(値:T)

Value := (TObject (Ptr)) as T

しかし、これはうまくいきません。コンパイラは、「演算子はこのオペランド型には適用できません」と通知します。

誰かがいくつかのヒントを持っていますか?よろしくお願いします。

4

2 に答える 2