C# 快速導覽 - 索引子







google_ad_client = "ca-pub-1277342310653446";
google_ad_host = "ca-host-pub-1556223355139109";
google_ad_host_channel = "L0004";
google_ad_slot = "7187368929";
google_ad_width = 728;
google_ad_height = 15;














google_ad_client = "ca-pub-1277342310653446";
google_ad_host = "ca-host-pub-1556223355139109";
google_ad_host_channel = "L0004";
google_ad_slot = "4683073635";
google_ad_width = 728;
google_ad_height = 90;












公告



《如何自學程式設計》入選 Google Play 台灣地區2016年度最佳書籍|本站於 Google Play 銷售電子書。
預計之後會調整本站內容,凡是有兩個版本的教材,舊版本將刪除。













google_ad_client = "ca-pub-1277342310653446";
google_ad_host = "ca-host-pub-1556223355139109";
google_ad_host_channel = "L0004";
google_ad_slot = "5435125940";
google_ad_width = 728;
google_ad_height = 15;


























C# 快速導覽 - 索引子






類別 (class) 可定義索引子 (indexer) ,使該型態可如陣列 (array) 一般存取,簡單說,就是屬性 (property) 中宣告一個陣列,另外再定義 this 方法 (method) 。



舉例如下
class Demo {
int arr = new int[10];

int this[int i] {
get {
return arr[i];
}

set {
arr[i] = value;
}
}

static void Main() {
Demo d = new Demo();
int i = 0;
while (i < 10) {
d[i] = ++i;
}
System.Console.WriteLine(d[1]);
System.Console.WriteLine(d[2]);
System.Console.WriteLine(d[3]);
}
}

/* 《程式語言教學誌》的範例程式
http://pydoing.blogspot.com/
檔名:indexer.cs
功能:示範 C# 程式
作者:張凱慶
時間:西元 2013 年 6 月 */



我們先在 Demo 中宣告建立整數型態的陣列屬性 arr
int arr = new int[10];



this 方法中定義 getset
int this[int i] {
get {
return arr[i];
}

set {
arr[i] = value;
}
}



這樣一來, Demo 型態的變數就能用陣列方式存取屬性
Demo d = new Demo();
int i = 0;
while (i < 10) {
d[i] = ++i;
}



編譯執行,結果如下



























中英文術語對照
類別class
索引子indexer
陣列array
屬性property
方法method



您可以繼續參考

類別




相關目錄

回 C# 快速導覽
回 C# 教材
回首頁



參考資料

Standard ECMA-334 C# Language Specification
msdn: 索引子 (C# 程式設計手冊)







沒有留言:




















window.___gcfg = { 'lang': 'zh-TW' };





google_ad_client = "ca-pub-1277342310653446";
google_ad_host = "ca-host-pub-1556223355139109";
google_ad_host_channel = "L0004";
google_ad_slot = "5963585466";
google_ad_width = 728;
google_ad_height = 15;












Popular posts from this blog

迅雷 Thunder 7.9.43.5054 免安裝版 (9.1.41.914 安裝版) - 支援BT下載的萬用 檔案下載工具

qBittorrent 4.1.1 免安裝中文版 - 取代uTorrent的BT下載器

嘸蝦米輸入法免安裝版 1.0.13.589 - 唯一只用英文字母輸入的中文輸入法