Метод System::IterateOver

System::IterateOver(const Enumerable *) method

Это свойство‑функция оборачивает объект, поддерживающий перечисление (или итерирование), чтобы его можно было использовать в range‑based for loop. Эта перегрузка для Enumerable с типом‑целью по умолчанию.

template<typename Enumerable> std::enable_if_t<!IsSmartPtr<Enumerable>::value, Details::EnumeratorAdapter<Enumerable, Details::ValueTypeOfEnumerable<Enumerable>, Enumerable *>> System::IterateOver(const Enumerable *enumerable)
ПараметрОписание
EnumerableТип оборачиваемого объекта

См. также

System::IterateOver(const Enumerable *) method

Это свойство‑функция оборачивает объект, поддерживающий перечисление (или итерирование), чтобы его можно было использовать в range‑based for loop. Эта перегрузка для Enumerable без методов begin(), end() с аргументом типа‑цели для (auto& value : IterateOver(enumerable))

template<typename T,typename Enumerable> std::enable_if_t<!IsSmartPtr<Enumerable>::value, Details::EnumeratorAdapter<Enumerable, T, Enumerable *>> System::IterateOver(const Enumerable *enumerable)
ПараметрОписание
TТип‑цель, который должен возвращаться итератором
EnumerableТип оборачиваемого объекта

См. также

System::IterateOver(System::SmartPtr<Enumerable>) method

Это свойство‑функция оборачивает объект, поддерживающий перечисление (или итерирование), чтобы его можно было использовать в range‑based for loop. Эта перегрузка для Enumerable без методов begin(), end() с аргументом типа‑цели для (auto& value : IterateOver(enumerable))

template<typename T,typename Enumerable> std::enable_if_t<!Details::IsIterable<Enumerable>::value, Details::EnumeratorAdapter<Enumerable, T>> System::IterateOver(System::SmartPtr<Enumerable> enumerable)
ПараметрОписание
TТип‑цель, который должен возвращаться итератором
EnumerableТип оборачиваемого объекта

См. также

System::IterateOver(System::SmartPtr<Enumerable>) method

Это свойство‑функция оборачивает объект, поддерживающий перечисление (или итерирование), чтобы его можно было использовать в range‑based for loop. Эта перегрузка для Enumerable без методов begin(), end() с типом‑целью по умолчанию для (auto& value : IterateOver(enumerable)), аналогично следующему коду C#: foreach (var value in enumerable)

template<typename Enumerable> std::enable_if_t<!Details::IsIterable<Enumerable>::value, Details::EnumeratorAdapter<Enumerable>> System::IterateOver(System::SmartPtr<Enumerable> enumerable)
ПараметрОписание
EnumerableТип оборачиваемого объекта

См. также

System::IterateOver(System::SmartPtr<Enumerable>) method

Это свойство‑функция оборачивает объект, поддерживающий перечисление (или итерирование), чтобы его можно было использовать в range‑based for loop. Эта перегрузка для Enumerable с методами begin(), end() и типом‑целью по умолчанию для (auto& value : IterateOver(enumerable))

template<typename Enumerable> std::enable_if_t<Details::IsIterable<Enumerable>::value, System::SmartPtr<Enumerable>> System::IterateOver(System::SmartPtr<Enumerable> enumerable)
ПараметрОписание
EnumerableТип оборачиваемого объекта

См. также

System::IterateOver(System::SmartPtr<Enumerable>) method

Это свойство‑функция оборачивает объект, поддерживающий перечисление (или итерирование), чтобы его можно было использовать в range‑based for loop. Эта перегрузка для Enumerable с методами begin(), end() и типом‑целью, совпадающим с оригинальным value_type итератора.

template<typename T,typename Enumerable> std::enable_if_t<Details::IsIterable<Enumerable>::value &&std::is_same<typename Details::ReturnTypeTrait<T>::ReturnType, Details::IterableValueType<Enumerable>>::value, System::SmartPtr<Enumerable>> System::IterateOver(System::SmartPtr<Enumerable> enumerable)
ПараметрОписание
EnumerableТип оборачиваемого объекта
TТип‑цель, который должен быть возвращён итератором

См. также

System::IterateOver(System::SmartPtr<Enumerable>) method

Это свойство‑функция оборачивает объект, поддерживающий перечисление (или итерирование), чтобы его можно было использовать в range‑based for loop. Эта перегрузка для Enumerable с методами begin(), end() и различным типом‑целью и оригинальным value_type итератора.

template<typename T,typename Enumerable> std::enable_if_t<Details::IsIterable<Enumerable>::value &&!std::is_same<typename Details::ReturnTypeTrait<T>::ReturnType, Details::IterableValueType<Enumerable>>::value, Details::CppIteratorAdapter<Enumerable, T>> System::IterateOver(System::SmartPtr<Enumerable> enumerable)
ПараметрОписание
EnumerableТип оборачиваемого объекта
TТип‑цель, который должен быть возвращён итератором

См. также