Libreria Iterator C ++ - random_access_iterator_tag
Descrizione
Viene utilizzato per identificare la categoria di un iteratore e un iteratore ad accesso casuale supporta almeno una delle seguenti operazioni.
C ++ 98
proprietà | espressioni valide |
---|---|
È un file predefinito costruibile, copia-costruibile, copia-assegnabile e distruttibile |
|
Può essere confrontato per l'equivalenza utilizzando gli operatori di uguaglianza / disuguaglianza (significativo quando entrambi i valori dell'iteratore ripetono sulla stessa sequenza sottostante). |
|
Può essere dereferenziato come valore (se in uno stato dereferenziabile ). |
|
Per iteratori mutabili ( iteratori non costanti ): Può essere dereferenziato come lvalue (se in uno stato dereferenziabile ). |
*a = t |
Può essere incrementato (se in uno stato dereferenziabile ). Il risultato è anche dereferenziabile o un iteratore passato alla fine . Due iteratori che confrontano uguali, continuano a confrontare uguali dopo essere stati entrambi aumentati. |
|
Può essere decrementato (se preceduto da un valore iteratore dereferenziabile ). |
--un un-- *un-- |
Supporta gli operatori aritmetici + e - tra un iteratore e un valore intero o sottraendo un iteratore da un altro. |
|
Possono essere confrontati con gli operatori relazionali disuguaglianza ( < , > , <= e >= ). |
|
Supporta operazioni di assegnazione composta += e-= |
|
Supporta l'operatore di dereferenziazione offset ( [] ) |
a[n] |
C ++ 11
proprietà | espressioni valide |
---|---|
È un file predefinito costruibile, copia-costruibile, copia-assegnabile e distruttibile |
|
Può essere confrontato per l'equivalenza utilizzando gli operatori di uguaglianza / disuguaglianza (significativo quando entrambi i valori dell'iteratore ripetono sulla stessa sequenza sottostante). |
|
Può essere dereferenziato come valore (se in uno stato dereferenziabile ). |
|
Per iteratori mutabili ( iteratori non costanti ): Può essere dereferenziato come lvalue (se in uno stato dereferenziabile ). |
*a = t |
Può essere incrementato (se in uno stato dereferenziabile ). Il risultato è anche dereferenziabile o un iteratore passato alla fine . Due iteratori che confrontano uguali, continuano a confrontare uguali dopo essere stati entrambi aumentati. |
|
Può essere decrementato (se preceduto da un valore iteratore dereferenziabile ). |
--un un-- *un-- |
Supporta gli operatori aritmetici + e - tra un iteratore e un valore intero o sottraendo un iteratore da un altro. |
|
Può essere confrontato con gli operatori relazionali disuguaglianza ( < , > , <= e >= ). |
|
Supporta operazioni di assegnazione composta += e-= |
|
Supporta l'operatore di dereferenziazione offset ( [] ) |
a[n] |
I valori L sono scambiabili . | swap(a,b) |
Dichiarazione
Di seguito è riportata la dichiarazione per std :: random_access_iterator_tag.
C ++ 11
struct random_access_iterator_tag {};