Да, вы можете - добавить новый проект и добавить в него файлы. Вы не должны связывать статически, вы можете связать именно так, как вы хотите. Фактически, вы также можете скопировать старый файл проекта, отредактировать его содержимое, переименовать и добавить его в решение, а затем удалить / добавить нужные файлы.
Это не то же самое, что C #, где вам нужно зеркально отобразить расположение файлов вашего проекта на диске, на файлы C ++ можно ссылаться везде, где вам нравится.
Альтернативой может быть добавление новой цели сборки (например, отладка, выпуск и добавление 'console-debug' и 'console-release'), тогда вы можете пометить файлы как исключенные из сборок на основе их цели, поэтому у вас может быть 1 проект, который строит 2 несколько разные версии вашего проекта.