編譯器錯誤 CS0646
無法在包含索引子的類型上指定 DefaultMember 屬性
如果類別或其他類型指定 System.Reflection.DefaultMemberAttribute,則不能包含索引子。 如需詳細資訊,請參閱 屬性中定義的介面的私用 C++ 專屬實作。
下列範例會產生 CS0646:
// CS0646.cs
// compile with: /target:library
[System.Reflection.DefaultMemberAttribute("x")] // CS0646
class MyClass
{
public int this[int index] // an indexer
{
get
{
return 0;
}
}
public int x = 0;
}
// OK
[System.Reflection.DefaultMemberAttribute("x")]
class MyClass2
{
public int prop
{
get
{
return 0;
}
}
public int x = 0;
}
class MyClass3
{
public int this[int index] // an indexer
{
get
{
return 0;
}
}
public int x = 0;
}