クラスで演算子をオーバーロードすることは(Delphiで)可能ですか?少し前に、レコードでのみ可能であると読みましたが、以下のコードのようにクラスでも同様の情報を見つけました:
type
TMyClass = class
class operator Implicit(a: Integer): TMyClass;
end;
class operator TMyClass.Implicit(a: Integer): TMyClass;
begin
// ...
end;
次のアドレスから (変更) あります: http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/operatoroverloads_xml.html
しかし、(Delphi XE内で)使用しようとすると、次のようになります:
PROCEDURE、FUNCTION、PROPERTY、または VAR が必要です (E2123)
行列操作用の独自の単純なクラスを作成したいと考えており、クラス内で演算子のオーバーロードを使用できる可能性が非常に期待されています。
よろしく、 Artik