0

私はこの問題に出くわしました:

myObjectのクラスには、MyField型がDecimal?

次のコードを使用して、プロパティであるかのように誤ってフィールドにアクセスしました。

myObject.MyField()

それ以外の

myObject.MyField

そして、コンパイラから次のエラーが発生しました。Structure 'Decimal?' cannot be indexed because it has no default property

MSND のこのエラーに関するドキュメントは非常に短く、その意味がわかりません。

Q: あるmyObject.MyField()場合の意味と、あるのに自分のフィールドで使用できないのはなぜですか?

注:私の問題は解決しましたが、理解したいと思います...

4

2 に答える 2

3

()VB.NETを使用して、配列の要素にアクセスします。Structure 'Decimal?' cannot be indexedできないため、エラーメッセージが表示されます。

于 2012-09-20T15:50:38.557 に答える
1

そのコンテキストでは、[]C# と同様にインデックス演算子です。

より正確には、VB.NET では「デフォルト プロパティ」と呼ばれ、C# では「インデクサー」と呼ばれます。

さらに詳しくはこちらをご覧ください。

于 2012-09-20T15:42:12.520 に答える