0

コンパイルエラーが発生します

[エラー 1 (PE114) タイプ "ConsoleApplication." から使用される "Array[0..1] of ConsoleApplication.MyEnum" を入力します。public D:\PrismProjects\ConsoleApplication\ConsoleApplication\Program.pas 14 42 ConsoleApplication] である必要があります。

次のコードをコンパイルしようとすると:

namespace ConsoleApplication;

interface

type
  ConsoleApp = class
    public
      class method Main(args: array of string);
  end;

  MyEnum = (F, T);

const
  EnumOfBool: array[boolean] of MyEnum = [MyEnum.F, MyEnum.T];

implementation

  class method ConsoleApp.Main(args: array of string);
  begin
    Console.WriteLine('Hello World.');
  end;
end.
4

1 に答える 1

0

MyEnum はどこで定義されていますか? それがどこであっても、(エラー メッセージが示すように) パブリックとしてマークされていないことは確かですが、既定の可視性 (.NET ではプライベート) のままになっています。

それからRRUZは彼のコメントで正しいです、あなたはグローバル宣言を避けるべきです. .NET ではグローバル宣言が許可されていないため、Oxygene コンパイラはこれを静的 (クラス) メンバーとして含む (非表示の自動生成された) クラスを作成する必要があるため、最初から「正しく」実行する必要があります。

于 2011-11-04T15:41:28.357 に答える