Ошибка компилятора CS1622
Обновлен: Ноябрь 2007
Сообщение об ошибке
Не удается вернуть значение из итератора. Для возврата значения используйте оператор "yield return" или "yield break" для завершения итерации.
Cannot return a value from an iterator. Use the yield return statement to return a value, or yield break to end the iteration.
Итератор – это специальная функция, возвращающая значение через оператор "yield", а не через оператор "return". Дополнительные сведения см. в разделе итераторы.
Следующий пример приводит к возникновению ошибки CS1622:
// CS1622.cs
// compile with: /target:library
using System.Collections;
class C : IEnumerable
{
public IEnumerator GetEnumerator()
{
return (IEnumerator) this; // CS1622
yield return this; // OK
}
}