私はこのような可変引数のメンバ関数を有するデルファイに変換午前C++クラスを有する:可変引数クラスメソッドヘッダ変換エラー
class ICInterface {
virtual void printf(const char* fmt, ...) = 0;
};
私ができるように、同等のDelphiコードを作るためにこれを実行しようとしたが
ICInterface = class
procedure printf(fmt : PAnsiChar); varargs; cdecl; abstract; virtual;
end;
しかし、私はコンパイル時に、それは私にエラーを与える:デルファイからそれを呼び出す
[DCC Error] ICInterface.pas(9): E2169 Field definition not allowed after methods or properties
何午前私は間違っている?
それで、varargsメソッドを使ってC++抽象クラスを正しく翻訳することは不可能ですか? –
@John:正確な翻訳をお探しの場合は、はい。しかし、 'printf'を置き換えることができ、' varargs'があなたのアプリにもたらす可能性のあるセキュリティホールがなくても、Delphiの 'format'、' write'と 'writeln'を見てください。 –
私が言ったように、これは抽象クラスなので、Delphiで、私が翻訳している抽象クラスから派生したC++クラスへのポインタを渡す関数を記述しています。私は本当にそれを行う方法があることを望む:( –