¿Cuál es la forma correcta de manera de usar stdafx.h
, en términos de separación de dependencias?Cómo usar stdafx.h correctamente?
Si pongo todo ahí, entonces mis compilaciones están ardiendo rápido, y todo lo que necesito decir en ningún fichero es
#include "stdafx.h"
con las salvedades de que:
- que hay más tiempo saber qué archivos dependen de qué encabezados.
- Reduce la modularidad, haciendo que mi código sea menos reutilizable.
- Ya no puedo separar C
#include
s de los C++ (por ejemplo,cstring
versusstring.h
) sin mucho dolor. (Hablando de eso, ¿esto siquiera importa?)
Si pongo nada allí, puedo organizar todo bien - pero entonces mis compila frenar de manera espectacular.
Si pongo todo allí y también incluyen cada cabecera en mis archivos individuales, entonces consigo lo mejor de ambos mundos, con la salvedad de que ahora tengo que hacer un seguimiento de los problemas de sincronización.
¿Existe una solución bien conocida/bien aceptada para este problema?
De acuerdo. Coloque las cosas en encabezados precompilados que no va a tocar dentro del alcance de ese proyecto. –
No estoy seguro de cómo esto es relevante. I * still * no sabrá cuál de mis archivos fuente depende de qué encabezados (¿realmente necesitaba '#incluir' indirectamente en cada archivo?), Incluso si son encabezados del sistema. Y entonces * todavía * no será modular. –
Mehrdad
@Mehrdad, ese es uno de los compromisos de tener un encabezado precompilado. – Marlon