C 索引器 索引器的定義

2021-08-31 10:07:29 字數 804 閱讀 8590

索引器定義類似於屬性,但其功能與屬性並不相同。索引器提供一種特殊的方法編寫get和set訪問器。屬性可以像訪問字段一樣訪問物件的資料,索引器可以使使用者像訪問陣列一樣訪問類成員。定義索引器的語法如下:

《訪問修飾符》 型別名稱 this [型別名稱 引數名]

set索引器沒有像屬性和方法那樣的名字,關鍵字this清楚地表達了索引器引用物件的特徵。和屬性一樣,value關鍵字在set後的語句塊裡有引數傳遞意義。

和方法一樣,索引器有5種訪問保護級別new、public、protected、internal、private,和4種繼承行為修飾virtual、sealed、override、abstract,以及外部索引器。這些行為同方法沒有任何差別。唯一不同的是索引器不能為靜態(static),這在物件引用的語義下很容易理解。值得注意的是在重寫(override)實現索引器時,應該用base[e]來訪問父類的索引器。

和屬性的實現一樣,索引器的資料型別同時為get語句塊的返回型別和set語句塊中value關鍵字的型別。

陣列中的元素可以通過索引進行檢索,如果乙個類中有很多物件,怎樣簡單、快速地查詢到需要的物件以及物件的特性呢?索引器就是為了實現這樣的功能而設計的。索引器允許類或結構的例項按照與陣列相同的方式進行索引。可以簡單地把索引器理解為書中的目錄,字典中提供的檢索的索引。

索引器(indexer)是c#引入的乙個新型的類成員,它使得物件可以像陣列那樣被方便,直觀的引用。索引器非常類似於我們前面講到的屬性,但索引器可以有引數列表,且只能作用在例項物件上,而不能在類上直接作用。

索引器可以過載,以陣列的形式訪問類中的成員,實際上不單單是訪問,可以在訪問的**中實現特定的處理。

C 索引器 索引器的定義

索引器定義類似於屬性,但其功能與屬性並不相同。索引器提供一種特殊的方法編寫get和set訪問器。屬性可以像訪問字段一樣訪問物件的資料,索引器可以使使用者像訪問陣列一樣訪問類成員。定義索引器的語法如下 訪問修飾符 型別名稱 this 型別名稱 引數名 set索引器沒有像屬性和方法那樣的名字,關鍵字th...

c 定義索引器

索引器的宣告在某種程度上類似於屬性的宣告,例如,使用get和set方法來定義乙個索引器。不同的是,屬性值的定義要求返回或設定乙個特定的資料成員,而索引器的定義要求返回或設定的是某個物件例項的乙個值,即索引器將例項資料切分成許多部分,然後通過一些方法去索引 獲取或是設定每個部分。定義屬性需要提供屬性名...

mysql檔案索引器 C 索引器

概念 索引器 indexer 允許類中的物件可以像陣列那樣方便 直觀的被引用。當為類定義乙個索引器時,該類的行為就會像乙個 虛擬陣列 virtual array 一樣。索引器可以有引數列表,且只能作用在例項物件上,而不能在類上直接作用。可以使用陣列訪問運算子 來訪問該類的例項。索引器的行為的宣告在某...