librería vector
Vector de bool- El almacenamiento no es necesariamente una matriz de bool valores, pero la implementación de la biblioteca puede optimizar el almacenamiento de modo que cada valor se almacena en un solo bit.
- Elementos que no se obtienen utilizando el asignador de objeto, pero su valor se fija directamente sobre el bit apropiado en la memoria interna.
- La función asociada flip y un nuevo miembro de la firma de intercambio .
- Un tipo especial de miembro, de referencia , de una clase que tiene acceso a los bits individuales en la memoria interna del recipiente con una interfaz que simula un bool referencia. Por el contrario, el tipo de miembro const_reference es una llanura bool .
- Los tipos de puntero y el repetidor utiliza el contenedor no son necesariamente ni punteros ni conforme iteradores, aunque deberá simular la mayor parte del comportamiento esperado.
Estos cambios proporcionan una interfaz peculiar a esta especialización y optimización de la memoria favorable sobre el procesamiento (que puede o no puede satisfacer sus necesidades). En cualquier caso, no es posible crear una instancia de la plantilla no especializada del vector de bool directamente. Soluciones provisionales para evitar esto van desde el uso de un tipo diferente ( carbón , unsigned char ) o un contenedor (como deque ) para utilizar los tipos de contenedor o especializarse en tipos específicos de asignador. BitSet es una clase que proporciona una funcionalidad similar para las matrices de tamaño fijo de bits .
Parámetros de plantilla
- Alloc
- Tipo del objeto de imputación utilizado para definir el modelo de asignación de almacenamiento. Por defecto,asignador <bool> se utiliza, que define el modelo de asignación de memoria más simple y es de valor independiente.
alias, tal como tipo de miembro vector de <bool> :: allocator_type .
Tipos miembros
tipo de miembro | definición | notas |
---|---|---|
value_type | El primer parámetro de plantilla ( bool ) | |
allocator_type | El segundo parámetro de plantilla ( Alloc ) | por defecto: asignador<bool> |
referencia | Una clase de miembro específico (ver referencia abajo) | |
const_reference | bool | |
puntero | un tipo que simula el comportamiento del puntero | convertible en const_pointer |
const_pointer | un tipo que simula el comportamiento puntero a const | |
iterador | un tipo que simula iterador de acceso aleatoriocomportamiento | convertible enconst_iterator |
const_iterator | un tipo que simula iterador de acceso aleatorio a un comportamiento const | |
reverse_iterator | reverse_iterator <iterator> | |
const_reverse_iterator | reverse_iterator <const_iterator> | |
difference_type | un tipo integral firmado | por lo general el mismo queptrdiff_t |
size_type | un tipo entero sin signo | por lo general el mismo quesize_t |
Clases de miembros
- vector <bool> :: Referencia
- Tipo de referencia (class miembro público)
Las funciones miembro
La especialización tiene las mismas funciones miembro como el no especializado vector , excepto los datos ,emplazar y emplace_back ., que no están presentes en esta especialización se añade lo siguiente:- vuelta
- Pedacitos del tirón (función miembro pública)
- intercambiar
- Contenedores o elementos de intercambio (función miembro pública)
No hay comentarios.:
Publicar un comentario