Для Visual Studio: убедитесь, что все имена файлов уникальны. Результат компиляции dir/file.cpp
будет obj/file.obj
. Когда компилятор компилирует otherdir/file.cpp
, результат будет obj/file.obj
- предыдущий объектный файл будет перезаписан . Это относится к VS 2008 и более ранним версиям, и я подозреваю, что это все еще относится к VS 2010.
Я тоже организую исходный код, как вы. В итоге я использовал следующую схему именования: если путь к исходному файлу будет Dir/Subdir/AnotherSubDir/File.cpp
, тогда я назову файл Dir/Subdir/AnotherSubdir/DirSubdirAnotherSubdirFile.cpp
. Гадкий? Да. Но он превосходит проект, который не будет ссылаться, и легко понять, каким должно быть имя файла. Я думаю, вы могли бы просто добавить порядковый номер в файл, но я подумал, что это будет ужаснее. Кроме того, если вы забудете сделать имя файла уникальным, ошибка не так очевидна. Особенно, когда ты устал, а твоя невеста / жена ждет ...