コンパイラ エラー CS1545
プロパティ、インデクサー、またはイベント 'property' は、この言語でサポートされていません。アクセサー メソッドの 'set accessor' または 'get accessor' を直接呼び出してください
コードが既定以外の インデクサー を持つオブジェクトを利用して、インデックス付きの構文を使用しようとしています。 このエラーを解決するには、プロパティの get
または set
アクセサー メソッドを呼び出します。
C++
// CPP1545.cpp
// compile with: /clr /LD
// a Visual C++ program
using namespace System;
public ref struct Employee {
Employee( String^ s, int d ) {}
property String^ name {
String^ get() {
return nullptr;
}
}
};
public ref struct Manager {
property Employee^ Report [String^] {
Employee^ get(String^ s) {
return nullptr;
}
void set(String^ s, Employee^ e) {}
}
};
次の例では CS1545 が生成されます。
C#
// CS1545.cs
// compile with: /r:CPP1545.dll
class x {
public static void Main() {
Manager Ed = new Manager();
Employee Bob = new Employee("Bob Smith", 12);
Ed.Report[ Bob.name ] = Bob; // CS1545
Ed.set_Report( Bob.name, Bob); // OK
}
}
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。