- 189 名前:デフォルトの名無しさん mailto:sage [2012/03/16(金) 17:20:31.75 ]
- type
TFoo<T> = class public function Eq(A, B: T): Boolean; end; function TFoo<T>.Eq(A, B: T): Boolean; begin Result := A = B; // [DCC エラー] E2015 この型には指定した演算子は使えません end; でエラーになってしまう。 Tにはクラスではなく列挙型のみを指定して使いたいんだけど(なのでIなんたらは継承できない) そういうのは現実的ではない? 列挙型制約なんてのはサポートされないんだろうか。 type TMyEnum = (meFoo, meBar, meBaz); var foo: TFoo<TMyEnum>; if foo.eq(meFoo, meBar) then ...
|

|