C 中IEumerable的簡單了解

2021-10-22 16:57:31 字數 1275 閱讀 3194

ienumerable是可列舉型別,一般在迭代時應用廣泛,如foreach中要迴圈訪問的集合或陣列都實現了ienumerable介面。只要能夠遍歷,都直接或間接實現了ienumerable介面。如:string型別的物件,可遍歷,輸出時以字元輸出,間接實現了ienumerable介面,"oop"遍歷列印就是'o','o','p';又如int型別沒有實現ienumerable介面,就無法依賴foreach遍歷。現以乙個例項遍歷陣列:

ienumerabletest enumerabletest =

newienumerabletest()

; enumerabletest.

show()

;------

----

----

----

----

----

----

----

----

----

----

----

----

-public

class

ienumerabletest}}

public

class

demoienumerable

:ienumerable

;return

newtestenumerator

(students);}

}public

class

testenumerator

:ienumerator

//public object current => throw new notimplementedexception();

public

object current

return _students[_position];}

}public

bool

movenext()

return

false;}

public

void

reset()

}

上面的例項執行foreach步驟:首先進入demoienumerable類執行getenumerator()方法,然後初始化_position=-1,接著執行testenumerator類的建構函式,然後返回進入in,執行testenumerator類的movenext()方法,判斷下標(_position)是否越界,如沒有越界,下標自動加1,並返回true,然後獲取testenumerator類的current屬性,返回對應下標的值,依次迭代,獲取陣列的值,直至結束。

C 中簡單的氣泡排序

using system using system.collections.generic using system.linq using system.text double num new double 6 for int j 0 j 6 j 個數是 j 1 num j double.parse...

C 中簡單的map應用

map是c 提供的可以將關鍵字和該關鍵字的值 key value 一對一聯絡起來並進行操作的乙個容器。基本操作有新增,修改,查詢,刪除。下面簡單說明這三種操作的實現方式。宣告map include 一定要有 using namespace std map f map中資料型別可以是任意的。新增 ma...

C 中CefSharp的簡單使用

1.建立32位winform專案 必須指定32位或64位 這裡使用32位 3.複製cefsharp相關檔案到專案debug目錄並新增引用 關鍵步驟是專案必須是32位 可以直接通過nuget程式包直接匯入,本人為了圖方便直接將用到的檔案打包,新建專案時解壓到debug目錄就行 密碼 5n49 包內檔案...