簡單說來,所謂c#索引器就是一類特殊的屬性,通過它們你就可以像引用陣列一樣引用自己的類。宣告方法如下(與屬性相似):
public type this [int index]用例子簡單說明:set
}
using system.collections;備註:static void main(string args)
",peek);
bits[0] = true;
console.writeline();
console.readkey();
} struct intbits
//定義索引器
//索引器的「屬性名」是this,意思是回引類的當前例項,引數列表包含在方括號而非括號之內。
public bool this [int index]
set
} }
索引器允許類或結構的例項按照與陣列相同的方式進行索引。索引器類似於屬性,不同之處在於它們的訪問器採用引數。
◆get 訪問器返回值。set 訪問器分配值。
◆this 關鍵字用於定義索引器。
◆value 關鍵字用於定義由 set 索引器分配的值。
索引器不必根據整數值進行索引,由您決定如何定義特定的查詢機制。索引器可被過載。 索引器可以有多個形參,例如當訪問二維陣列時。索引器可以使用百數值下標,而陣列只能使用整數下標:如下列定義乙個string下標的索引器
public int this [string name]屬性和索引器
屬性和索引器之間有好些差別:
類的每乙個屬性都必須擁有唯一的名稱,而類裡定義的每乙個c#索引器都必須擁有唯一的簽名(signature)或者引數列表(這樣就可以實現索引器重載)。 屬性可以是static(靜態的)而索引器則必須是例項成員。 為c#索引器定義的訪問函式可以訪問傳遞給索引器的引數,而屬性訪問函式則沒有引數。
ArrayList詳細描述
arraylist和vector都是使用陣列方式儲存資料,此陣列元素數大於實際儲存的資料以便增加和插入元素,它們都允許直接按序號索引元素,但是插入元素要涉及陣列元素移動等記憶體操作,所以索引資料快而插入資料慢,vector由於使用了synchronized方法 執行緒安全 通常效能上較arrayli...
QWidget類詳細描述
qwidget類是所有使用者介面物件的基類。qwidget qwidget parent 0,const char name 0,wflags f 0 視窗部件是使用者介面的乙個原子 它從視窗系統接收滑鼠 鍵盤和其它事件,並且在螢幕上繪製自己的表現。每乙個視窗部件都是矩形,並且它們按z軸順序排列的。...
S3C2440時鐘詳細描述
s3c2440 cpu預設的工作主頻為12mhz或16.9344mhz,這裡使用最多的是12m。使用pll電路可以產生更高的主頻供cpu及外圍器件使用。s3c2440有兩個pll mpll和upll,upll專用與usb裝置。mpll用於cpu及其他外圍器件。通過mpll會產生三個部分的時鐘頻率 f...