System::IterateOver-Methode

System::IterateOver(const Enumerable *) method

Diese Funktions-Eigenschaft umschließt ein enumerable (oder iterable) Objekt, sodass es mit einer range-based for-Schleife verwendet werden kann. Diese Überladung für Enumerable mit Standard-Zieltyp.

template<typename Enumerable> std::enable_if_t<!IsSmartPtr<Enumerable>::value, Details::EnumeratorAdapter<Enumerable, Details::ValueTypeOfEnumerable<Enumerable>, Enumerable *>> System::IterateOver(const Enumerable *enumerable)
ParameterBeschreibung
EnumerableDer Typ eines umschlossenen Objekts

Siehe auch

System::IterateOver(const Enumerable *) method

Diese Funktions-Eigenschaft umschließt ein enumerable (oder iterable) Objekt, sodass es mit einer range-based for-Schleife verwendet werden kann. Diese Überladung für Enumerable ohne begin()- und end()-Methoden mit Zieltyp-Argument für (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)
ParameterBeschreibung
TDer Zieltyp, der vom Iterator zurückgegeben werden muss
EnumerableDer Typ eines umschlossenen Objekts

Siehe auch

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

Diese Funktions-Eigenschaft umschließt ein enumerable (oder iterable) Objekt, sodass es mit einer range-based for-Schleife verwendet werden kann. Diese Überladung für Enumerable ohne begin()- und end()-Methoden mit Zieltyp-Argument für (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)
ParameterBeschreibung
TDer Zieltyp, der vom Iterator zurückgegeben werden muss
EnumerableDer Typ eines umschlossenen Objekts

Siehe auch

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

Diese Funktions-Eigenschaft umschließt ein enumerable (oder iterable) Objekt, sodass es mit einer range-based for-Schleife verwendet werden kann. Diese Überladung für Enumerable ohne begin()- und end()-Methoden mit Standard-Zieltyp-Argument für (auto& value : IterateOver(enumerable)) analog zu folgendem C#-Code 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)
ParameterBeschreibung
EnumerableDer Typ eines umschlossenen Objekts

Siehe auch

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

Diese Funktions-Eigenschaft umschließt ein enumerable (oder iterable) Objekt, sodass es mit einer range-based for-Schleife verwendet werden kann. Diese Überladung für Enumerable mit begin()- und end()-Methoden mit Standard-Zieltyp-Argument für (auto& value : IterateOver(enumerable))

template<typename Enumerable> std::enable_if_t<Details::IsIterable<Enumerable>::value, System::SmartPtr<Enumerable>> System::IterateOver(System::SmartPtr<Enumerable> enumerable)
ParameterBeschreibung
EnumerableDer Typ eines umschlossenen Objekts

Siehe auch

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

Diese Funktions-Eigenschaft umschließt ein enumerable (oder iterable) Objekt, sodass es mit einer range-based for-Schleife verwendet werden kann. Diese Überladung für Enumerable mit begin()- und end()-Methoden, wobei der Zieltyp dem ursprünglichen value_type des Iterators entspricht.

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)
ParameterBeschreibung
EnumerableDer Typ eines umschlossenen Objekts
TDer Zieltyp, der vom Iterator zurückgegeben werden muss

Siehe auch

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

Diese Funktions-Eigenschaft umschließt ein enumerable (oder iterable) Objekt, sodass es mit einer range-based for-Schleife verwendet werden kann. Diese Überladung für Enumerable mit begin()- und end()-Methoden mit unterschiedlichem Zieltyp und ursprünglichem value_type des Iterators.

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)
ParameterBeschreibung
EnumerableDer Typ eines umschlossenen Objekts
TDer Zieltyp, der vom Iterator zurückgegeben werden muss

Siehe auch