C 中的yield關鍵字

2022-03-23 12:22:22 字數 317 閱讀 8733

迭代器,是乙個連續的集合,出現多個yield return其實就是將這多個的yield return元素按照出現的順序儲存在迭代器的集合中而已。形如下面的形式:

public

class citycollection : ienumerable;

ienumerator

ienumerable.getenumerator()

", i);}}

ienumerator ienumerable.getenumerator()

}}

每一條yield return都是迭代器中的乙個元素。

C 中yield關鍵字

yield關鍵字向編譯器指示它所在的方法是迭代器塊。編譯器生成乙個類來實現迭代器塊中標的行為。在迭代器中,yieid關鍵字與return關鍵字結合使用,向列舉器物件提供值。這是乙個返回值,例如,在foreach語句的每一次迴圈中返回的值。yieid關鍵字也可與break結合使用,表示迭代結束。usi...

c 中的yield關鍵字

原文 今天講到迭代器,對迭代器中yield關鍵字做了研究。說起yield,不得不先說說迭代器。迭代器是c 2.0中的新功能,有了它,我們就可以在自己的類或者結構中支援foreach迭代而不必實現整個ienumerable介面,我們只需要提供乙個迭代器,即可遍歷類中的資料結構。當編譯器檢測到迭代器時,...

C 中的yield關鍵字

yield 關鍵字yield 在迭代器塊中用於向列舉數物件提供值或發出迭代結束訊號。迭代器塊有兩個特殊語句 yield return yield break 迭代器塊 迭代器塊是有乙個或多個yield語句的 塊。下面三種型別的 塊中的任意一種都可以是迭代器塊 方法主體 訪問器主體 運算子主體 yie...