De Herb Sutter usando la referencia citada:
La especialización vectorial se puso intencionalmente en el estándar para proporcionar un ejemplo de cómo escribir un contenedor proxy. Un "contenedor proxy" es un contenedor cuyos objetos no se obtienen directamente; en lugar de proporcionarle punteros o referencias a un objeto contenido, un contenedor proxy le proporciona objetos proxy que pueden usarse para acceder o manipular indirectamente un objeto contenido. Las colecciones proxy pueden ser útiles en los casos en que los objetos dentro de la colección no siempre se pueden acceder de forma confiable directamente como si estuvieran en la memoria, como por ejemplo con una colección basada en disco que automáticamente pagina piezas de sí mismo dentro y fuera de la memoria debajo de las cubiertas como necesario. Entonces, la idea era mostrar cómo hacer que una colección tan proxy cumpla con los requisitos de un "contenedor"
Y sí, hubo discusión en el momento.
- Para todos los detalles sangrientos, navegue a DejaNews y realice una búsqueda poderosa de Subject = "vector and bool" y Forum = " c ++ ". Las discusiones tuvieron lugar en enero / febrero de 1997. También encontrará discusiones más recientes de personas que preguntan cómo desactivar la especialización de vectores; vea el final de este artículo para mi consejo.
El resto es historia. Y odio ver una pregunta sin respuesta con tan buenos enlaces.
std::vector
escrito antesstd::bitset
?