Biblioteca Iterator C ++ - input_iterator_tag
Descrição
É usado para identificar a categoria de um iterador como um iterador de entrada e todos os iteradores de entrada suportam pelo menos uma das seguintes operações.
C ++ 98
propriedade | expressões válidas |
---|---|
É uma cópia construtível, atribuível por cópia e destrutível |
|
Pode ser comparado para equivalência usando os operadores de igualdade / desigualdade (significativo se ambos os iteradores estiverem no domínio ). |
|
Ele pode ser desreferenciado como um rvalue (se estiver em um estado desreferenciável ). |
|
Ele pode ser incrementado (se estiver em um estado não referenciável ). O resultado também pode ser desreferenciável ou um iterador ultrapassado . O valor do iterador anterior não precisa ser referenciável após o aumento. |
|
Seu tipo de valor não precisa ser atribuível | t = u não requerido |
C ++ 11
propriedade | expressões válidas |
---|---|
É uma cópia construtível, atribuível por cópia e destrutível |
|
Pode ser comparado para equivalência usando os operadores de igualdade / desigualdade (significativo se ambos os iteradores estiverem no domínio ). |
|
Ele pode ser desreferenciado como um rvalue (se estiver em um estado desreferenciável ). |
|
Ele pode ser incrementado (se estiver em um estado não referenciável ). O resultado também pode ser desreferenciável ou um iterador ultrapassado . O valor do iterador anterior não precisa ser referenciável após o aumento. |
|
Seu tipo de valor não precisa ser atribuível | t = u não requerido |
Lvalues são trocáveis . | swap(a,b) |
Declaração
A seguir está a declaração para std :: input_iterator_tag.
C ++ 11
struct input_iterator_tag {};