Синтаксис C # с генериками - PullRequest
4 голосов
/ 04 марта 2011

У меня вопрос по поводу следующего объявления переменной. Что это значит?

List<string>.Enumerator enumerator

Список является универсальным типом, где строка служит параметром типа. Как интерпретировать .Enumerator после этого?

Ответы [ 2 ]

8 голосов
/ 04 марта 2011

List<T> имеет вложенный класс, называемый Enumerator.

Итак, определение типа это List<T>.Enumerator (а в вашем случае T это string).

PS

На самом деле, List<T>.Enumerator - это struct, а не class, в любом случае определение типа будет таким же.

Фактически для всех вложенных типов это всегда OuterType.NestedType

1 голос
/ 04 марта 2011

Попробуйте эту ссылку, есть вся информация о List.Enumerator: Перечислитель в документации MSDN

В сущности, перечислитель используется при циклическом просмотре списка для каждого: «Изначально перечислитель располагается перед первым элементом в коллекции. В этой позиции значение Current не определено. Поэтому необходимо вызвать MoveNext, чтобы перевести перечислитель в первый элемент коллекции перед чтением значения Current.»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...