IIterator<T> Interface
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Prend en charge l’itération simple sur une collection.
public interface class IIterator
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(1786374243, 17152, 17818, 153, 102, 203, 182, 96, 150, 62, 225)]
template <typename T>
struct IIterator
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(1786374243, 17152, 17818, 153, 102, 203, 182, 96, 150, 62, 225)]
public interface IIterator<T>
Public Interface IIterator(Of T)
Paramètres de type
- T
- Dérivé
- Attributs
Configuration requise pour Windows
Famille d’appareils |
Windows 10 (introduit dans 10.0.10240.0)
|
API contract |
Windows.Foundation.FoundationContract (introduit dans v1.0)
|
Remarques
L’interface IIterator<T> n’est pas explicitement masquée par la projection de langage pour .NET, mais l’interface IIterable\<T\> est masquée. Pour la plupart des scénarios .NET qui nécessitent spécifiquement une API pour l’objet itérateur, vous utiliserez probablement IEnumerator<T> (peut-être avec une contrainte de type spécifique) comme obtenu en appelant IEnumerable<T>. GetEnumerator.
Si des modifications sont apportées à la collection, telles que l’ajout, la modification ou la suppression d’éléments, l’itérateur est autorisé à déclencher une exception pour toutes les opérations.
Fonctions d’extension C++/WinRT
Notes
Des fonctions d’extension existent sur les types de projection C++/WinRT pour certaines API Windows Runtime. Par exemple, winrt::Windows::Foundation::IAsyncAction est le type de projection C++/WinRT pour IAsyncAction. Les fonctions d’extension ne font pas partie de la surface d’interface binaire d’application (ABI) des types Windows Runtime réels. Elles ne sont donc pas répertoriées en tant que membres des API Windows Runtime. Mais vous pouvez les appeler à partir de n’importe quel projet C++/WinRT. Consultez Fonctions C++/WinRT qui étendent Windows Runtime API.
operator++();
operator++(int);
Ces opérateurs autorisent les boucles range-for sur Windows Runtime objets itérables. L’opérateur préfixe et postfix ++
avance l’itérateur et le définit sur nullptr
si l’itérateur est terminé.
T operator*() const;
Le déréférencement de l’itérateur équivaut à appeler Current.
using iterator_concept= std::input_iterator_tag;
using iterator_catetory = std::input_iterator_tag;
using value_type = T;
using difference_type = ptrdiff_t;
using pointer = void;
using reference = T;
Types imbriqués qui améliorent l’interopérabilité avec les itérateurs C++.
Propriétés
Current |
Obtient l'élément en cours dans la collection. |
HasCurrent |
Obtient une valeur qui indique si l’itérateur fait référence à un élément actif ou se trouve à la fin de la collection. |
Méthodes
GetMany(T[]) |
Récupère plusieurs éléments à partir de l’itérateur.
|
MoveNext() |
Avance l’itérateur vers l’élément suivant de la collection. |