Ответ 1
Да, я обычно делаю это все время. Как сказал Гарри, это уменьшает использование дискового пространства. Для меня это не очень важно, так как дисковое пространство невероятно дешево, но это может быть проблемой для вас. Настоящая причина, по которой я делаю это, лучше отразить то, как будет выглядеть развертывание. Лучший способ сделать это - иметь лист свойств, который изменяет выходной каталог на $(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
и что угодно для каждого небольшого каталога.