Este es el predeterminado en Visual Studio, y lo ha sido durante bastante tiempo (al menos desde VC++ 6). El directorio intermedio se establece de manera predeterminada en el mismo directorio de salida, no en el directorio de origen. Esto significa que todos los archivos de objeto se colocan junto al resultado final.
De hecho, requiere un poco de pánico si está trabajando con proyectos que esperan que la salida del compilador se coloque junto a los archivos fuente. Como VC++ tiene por defecto dar a los archivos de objeto el mismo nombre que su archivo fuente correspondiente (pero con una extensión diferente), si tiene varios archivos fuente con el mismo nombre (pero diferentes rutas), la compilación de cada archivo fuente sobrescribirá el objeto correspondiente archivo. El último archivo que se compilará "gana".
Esto, naturalmente, rompe la construcción.
Requerir que los nombres de los archivos fuente sean globalmente únicos en un proyecto es realmente bastante molesto. Puede modificar la ubicación de salida para que, por ejemplo, incluya una ruta; el enlazador todavía hace lo correcto.
no estoy seguro de por qué no es el valor por defecto, pero tienes razón , debería ser. Escribir una hoja de propiedades para fi x este es probablemente el mejor cambio que he hecho en mi flujo de trabajo VS. – jalf