Да, я обычно делаю это все время . Как сказал Гарри, это уменьшает использование дискового пространства. Это действительно не имеет большого значения для меня, так как дисковое пространство невероятно дешево, но это может быть проблемой для вас. Настоящая причина, по которой я это делаю, заключается в том, чтобы лучше отразить, как будет выглядеть развертывание. Лучший способ сделать это - иметь лист свойств , который изменяет каталог вывода на $(SolutionDir)/build/bin
. После этого я установил для рабочего каталога $(SolutionDir)/build
, то есть всю структуру, которая идентична той, которая будет развернута, а не распределена по различным каталогам проектов.
build
|-- bin
| |-- foo.exe
| |-- libfoo.dll
| `-- libbar.dll
|-- plugins
| |-- extender.py
| `-- something.lua
`-- skins
|-- default.skin
`-- white-and-gold.skin
В целом, наличие изолированного каталога для создаваемых вещей (а не исходников) - это хорошо. Это облегчает написание пользовательских шагов сборки, поскольку вы знаете, где будет конечный результат, и облегчает интеграцию с вашей системой управления версиями, поскольку вы можете просто настроить его на игнорирование всего этого каталога, вместо того, чтобы обойти установку ignore
для всех .exe
, .lib
, .so
, .dll
и все, что угодно для каждого маленького каталога.