No hay un vector 'estándar': el estándar define el comportamiento y la interfaz (y algunos detalles de implementación, como el almacenamiento contiguo) pero el código es un asunto que los escritores del compilador deben determinar.
Su compilador debe tener su propio archivo de encabezado <vector>
, ¿ha verificado esto en su compilación include path? Una vez que descubra que también debería ver los otros contenedores STL en sus respectivos encabezados. La lista de Microsoft Visual C++ es here, incluyendo algunos que son de propiedad, así que tengan cuidado de que por el siguiente descargo de responsabilidad de la muestra:
En Visual C++ .NET 2003, los miembros de los archivos <hash_map>
y <hash_set>
cabecera son ya no se encuentra en el espacio de nombre estándar , sino que se ha movido al en el espacio de nombres stdext. Consulte stdext Espacio de nombres para obtener más información.
En mi instalación de Visual C++ Express 2010, se encuentran en esta carpeta:
c: \ archivos de programa \ Microsoft Visual Studio 10.0 \ VC \ include
Siempre es bueno mirar y aprender. Pero no estoy seguro de ver el código fuente de algo tan complejo como 'std :: vector' es una buena opción. Claro que puedes aprender mucho pero también te puedes perder muy fácilmente. – ereOn
Muchas implementaciones de STL incluirán una gran cantidad de código para cosas como la depuración de iteradores: será difícil de leer y contener una gran cantidad de código que no es directamente relevante para lo que hace el vector. Puede que no sea el mejor lugar para aprender. – AshleysBrain