2

実際、いくつかのライブラリをフリー パスカルに変換する作業を行っています。したがって、問題は、デルファイではアンパサンド (&) 記号を使用して予約語をエスケープできるが、フリーパスカルでは機能しないことです。コンパイラはこのメッセージで不平を言います
ForLibDx.pas(72,13) Fatal: illegal character "'&'" ($26)

アンパサンド記号を含める場合。

実際{$MODE DELPHI}、フリーパスカルでユニットをコンパイルするためにを使用しています

FPC 2.2.4

ラザロ 0.9.28.2

前もって感謝します。

4

1 に答える 1

4

私の記憶では、FPC コンパイラには予約語をエスケープする手段がありません。
予約語をエスケープするためのエスケープ文字としてのアンパサンド(&)は、Delphi 言語の Delphi コンパイラ専用機能です。

Rob Kennedy がここで提案しているように、完全修飾名 (ユニットとクラス名を含む) を使用することで、これを回避できます。

注: すべての IDE およびサード パーティ ツールが対応できるわけではないため、Delphi では生成されていないコードに対してこれらのアンパサンド エスケープを避けることをお勧めします。

--jeroen

于 2010-12-21T15:54:39.740 に答える