在 C# 中,方括號運算子支援從類似字典的物件進行陣列存取和鍵值擷取。但是,這些類別本身並不支援重載方括號運算子。此功能的文件列在 C# 文件中的「Item」屬性下。
要在自己的類別中重載方括號運算符,您可以宣告一個索引器財產。索引器屬性的語法為:
public type this[arglist] { get; set; }
其中:
For例如,要重載二維數組的方括號運算符,您可以如下聲明索引器屬性:
public object this[int x, int y] { get { return array[x, y]; } set { array[x, y] = value; } }
需要注意的是,索引器當您提供無效座標時,DataGridView 類別中的內容不會引發異常。但是,可以透過在您自己的索引器屬性實作中明確處理異常來覆寫此行為。
例如,如果提供的座標無效,要拋出 ArgumentOutOfRangeException,您可以如下實作索引器屬性:
public object this[int x, int y] { get { if (x < 0 || x >= width) { throw new ArgumentOutOfRangeException("x"); } if (y < 0 || y >= height) { throw new ArgumentOutOfRangeException("y"); } return array[x, y]; } set { if (x < 0 || x >= width) { throw new ArgumentOutOfRangeException("x"); } if (y < 0 || y >= height) { throw new ArgumentOutOfRangeException("y"); } array[x, y] = value; } }
以上是如何在 C# 中重載方括號運算子?的詳細內容。更多資訊請關注PHP中文網其他相關文章!