Build solution visual studio где

Обновлено: 04.07.2024

В наше время open source проекты все популярнее. На площадках открытых проектов, например, на github можно найти множество полезных программ, но они не всегда имеют исполняемые файлы ("exe"), поэтому я постараюсь рассказать о том, как можно собрать самостоятельно C/C++ программу, из исходников, написанную на Microsoft Visual Studio.

Первым делом нам необходимо загрузить онлайн установщик Microsoft Visual Studio, с официального сайта. Для компиляции С/С++ проектов нет необходимости во всех пакетах и можно выбрать только те, которые нам необходимы.

Установщик загрузит необходимые пакеты из интернета и установит их.

После установки Visual Studio можно убедиться, что всё работает создав тестовый проект и скомпилировав его. Для этого нажмите в меню "Файл" → "Создать" → "Проект. "

После чего появится диалог выбора типа проекта, где можно выбрать:

  • Консольное приложение;
  • Классическое приложение;
  • Библиотеку динамической компоновки (dll);
  • Статическую библиотеку;

В нашем случае для быстрой проверки подойдет консольное приложение, выбираем название и папку проекта , после чего жмём кнопку "ОК" и создается наша программа.

После этого остается остается лишь скомпилировать её, для этого нужно выбрать в меню "Сборка" и нажать на пункт "Собрать решение".

Далее наш проект скомпилируется и в папке проекта появится наш тестовый исполняемый файл ("exe").

Если всё работает как надо, то можно приступать к сборке какого-нибудь другого открытого проекта с github или другого хостинга проектов.

Первым делом нам нужно загрузить исходники проекта. На площадке github это делается довольно просто, жмем на кнопку "Code" и "Download ZIP". После чего нужно распаковать его и можно приступать к сборке.

Ищем файл с расширением "<название_проекта>.vcxproj" и запускаем его. Перед нами появится диалог в котором нам предложат обновить SDK проекта (набор библиотек для разработки, которые Microsoft периодически обновляет) и набор инструментов, жмём обновить.

Теперь наш проект можно собрать, но до сборки необходимо выбрать разрядность проекта (например, для 32 битной системы или 64 битной), а также тип сборки (отладочный режим - debug или release).

Выбираем 64 битную систему и тип сборки релиз, после чего компилируем проект. Как и ранее нужно выбрать в меню "Сборка" и нажать на пункт "Собрать решение".

Некоторые проектам требуется вручную изменить SDK и набор инструментов, на установленный у вас, для этого идём в свойства проекта, выбираем сверху типа сборки и разрядность системы и уже там изменяем SDK и набор инструментов. В выпадающем меню появляются установленные у нас версии, выбираем их и нажимаем "ОК". После чего наш проект скомпилируется.

Бывает, что проект использует сторонние библиотеки, для этого их нужно загрузить отдельно и положить в папку. Узнать путь или изменить его можно в свойстве проекта, в разделе "С/C++" → "Общие" → "Дополнительные каталоги включаемых файлов".

Бывает, что SDK или набор инструментов, в свойстве проекта не изменяется в диалоге, чтобы изменить их нужно записать номер SDK, закрыть Visual Studio и вручную, блокнотом изменить этот номер в файле проекта "<название_проекта>.vcxproj".

При возникновении других проблем можно попробовать их загуглить, возможно, что кто-то уже сталкивался с ними и решил их.

Окно инструментов Обозревателя решений можно использовать для создания решений и проектов и управления ими, а также для просмотра кода и работы с ним. В этой статье мы подробно рассмотрим параметры пользовательского интерфейса, которые помогут вам делать это.

Этот раздел относится только к Visual Studio в Windows.

Окно инструментов

Снимок экрана с заметками: окно инструментов Обозревателя решений в Visual Studio

Окно инструментов содержит следующие элементы пользовательского интерфейса.

  • Строка меню, в которой можно управлять отображением файлов
  • Строка поиска, где можно искать определенные файлы и типы файлов
  • Главное окно, в котором можно просматривать файлы, проекты, решения и управлять ими
  • Узел решений, где можно управлять решениями
  • Узел проектов, где можно управлять проектами
  • Узел зависимостей, где можно управлять зависимостями решения и проекта
  • Узел программы, где можно просматривать, изменять программу или приложение, а также управлять ими
  • Вкладка изменений Git , где можно использовать Git и GitHub в Visual Studio для совместной командной работы над проектами

Если вы не видите окно инструментов Обозревателя решений, его можно открыть, выбрав Вид > Обозреватель решений в строке меню Visual Studio или нажав сочетание клавиш Ctrl+Alt+L.

Строка меню

Теперь давайте подробнее рассмотрим строку меню Обозревателя решений.

Снимок экрана с заметками: строка меню Обозревателя решений в Visual Studio

Строка меню содержит следующие элементы пользовательского интерфейса (слева направо).

Контекстное меню

Снимок экрана: контекстное меню в Обозревателе решений

Снимок экрана: контекстное меню в Обозревателе решений с дополнительными параметрами

Меню "Добавить"

В контекстном меню Обозревателя решений одним из самых полезных параметров является всплывающее меню Добавить. С его помощью можно добавить еще один проект в решение. Кроме того, можно добавить элемент в проект и многое другое.

Снимок экрана: всплывающее меню &quot;Добавить&quot; в контекстном меню Обозревателя решений

Открыть всплывающее меню Добавить можно из узлов Решение, Проект или Зависимости. Его пункты зависят от узла.

Руководство по добавлению элементов и проектов с помощью контекстного меню в Обозревателе решений см. в статье Общие сведения о проектах и решениях.

Ранее вы кратко ознакомились с множеством компонентов, образующих среду интегрированной разработки Visual Studio 2013. Теперь вы получите возможность поработать с тремя наиболее широко используемыми инструментальными окнами - Solution Explorer, Toolbox и Properties.

Создавая или открывая приложение или просто отдельный файл, система Visual Studio 2013 использует концепцию решения (solution) для связывания всех компонентов в единое целое. Как правило, решение состоит из одного или нескольких проектов, каждый из которых, в свою очередь, содержит множество элементов, связанных с ним. В прошлом такими элементами были обычные файлы, но в настоящее время все чаще проекты создаются из элементов, которые образованы из нескольких файлов или вообще не включают в себя ни одного файла.

Окно Solution Explorer с несколькими проектами

С каждым проектом связана отдельная пиктограмма, которая, как правило, указывает тип проекта и язык, на котором он написан. У этого правила есть несколько исключений, например, проекты установки (setup projects) не имеют языка программирования, на котором они создаются.

Один из узлов обращает на себя особое внимание, поскольку он выделен полужирным шрифтом. Это значит, что этот проект является стартовым, иначе говоря, проектом, который запускается, когда вы выполняете команду Debug --> Start Debugging или нажимаете клавишу F5 . Для того чтобы сделать проект стартовым, щелкните на соответствующей пиктограмме правой кнопкой мыши и выполните команду Set as StartUp Project. Стартовыми можно сделать сразу несколько проектов. Для этого следует использовать диалоговое окно Solution Properties, которое открывается, когда вы щелкаете правой кнопкой мыши на узле Solution и выбираете пункт Properties.

Панель инструментов в верхней части окна Solution Explorer позволяет настроить внешний вид этого окна, а также задать комбинации клавиш для разного внешнего вида отдельных элементов. Например, кнопка Show All Files - открывает листинг решения и позволяет показать на экране дополнительные файлы и папки:

Показ скрытых файлов с помощью Solution Explorer

Вы видите, что узел Reference Library на самом деле состоит из нескольких файлов, содержащих настройки, ресурсы и информацию о сборке.

В этом развернутом представлении можно увидеть все файлы и папки, относящиеся к структуре проекта. К сожалению, при изменении файловой системы окно Solution Explorer не обновляется автоматически, чтобы отразить эти изменения. Для того чтобы обеспечить правильное представление списка файлов и папок, можно использовать кнопку Refresh.

Инструментальная панель Solution Explorer чувствительна к контексту, поэтому в зависимости от выбранного типа узла на ней отображаются разные кнопки.

Предпросмотр файлов

Одной из наиболее интересных особенностей Visual Studio 2013 является возможность предварительного просмотра файла в обозревателе решений. Для этого необходимо нажать кнопку "Preview Selected Items" и выбрать файл в окне Solution Explorer. На вкладке обзора появится файл и его содержимое:

Предпросмотр файла в Solution Explorer

Вы можете свободно перемещаться по файлу и редактировать его, как и любой другой файл. Тем не менее, при переходе к другому файлу в Solution Explorer, вкладка Preview заменяется новым файлом. Другими словами, режим предпросмотра служит для быстрого открытия и перемещения по файлам вашего проекта.

Типичные задачи

Кроме удобного способа управления проектами и элементами, окно Solution Explorer содержит динамическое контекстное меню, предоставляющее быстрое выполнение наиболее типичных задач, таких как сборка решений или отдельных проектов, обращение к менеджеру конфигурации сборки и открытие файлов. На рисунках ниже продемонстрировано, как изменяется контекстное меню в зависимости от того, какой элемент был выбран в окне Solution Explorer:

Контекстное меню Solution Explorer для решения

Контекстное меню Solution Explorer для проекта

Контекстное меню Solution Explorer для файла

Если вы еще не включили в свой проект диаграмму классов, щелкните на кнопке View Class Diagram. После этого система автоматически добавит в ваш проект эту диаграмму и все классы. Если проект содержит много классов, то эта процедура может занять довольно много времени и в результате возникнет большая и неудобная диаграмма классов. Намного лучше добавлять диаграммы классов вручную, поскольку в таком случае пользователь сохраняет над ними полный контроль.

Первые пункты в левом и среднем меню связаны с созданием либо всего решения, либо выбранного проекта. В большинстве случаев эффективнее всего выполнить команду Build, поскольку она создает лишь те проекты, которые подверглись изменениям. Однако в некоторых случаях пользователю необходимо выполнить команду Rebuild, которая создает все взаимосвязанные проекты независимо от их состояния. Если вы хотите всего лишь удалить все дополнительные файлы, возникшие в процессе создания решения, то можете выполнить команду Clean. Эта команда может оказаться полезной, если вы хотите упаковать свое решение и послать его кому-нибудь в виде электронного письма и не хотите, чтобы при этом в него попали все временные файлы или файлы вывода, возникшие при создании решения.

Для большинства элементов в окне Solution Explorer первая команда контекстного меню похожа на команду, показанную на рисунке выше: по умолчанию команды Open и Open With. позволяют указать, как будет открыт конкретный элемент. Это особенно полезно при работе с ресурсными XML-файлами. Система Visual Studio 2013 открывает эти файлы, используя встроенный редактор ресурсов, но это не позволяет вам вносить определенные изменения и поддерживать все типы данных, которые вы хотели бы включить в проект (позже будет показано, как можно использовать свои собственные типы данных в файлах ресурсов). Используя команду Open With. можно вызвать редактор XML Editor.

Контекстные меню для узлов Solution, Project и Folder содержат команду Open Folder in Windows Explorer, что позволяет быстро открыть окно проводника Windows для поиска выбранного элемента и не искать в каталогах свое решение.

Добавление проектов и элементов

К основным действиям, выполняемым в окне Solution Explorer, относятся добавление, удаление и переименование проектов и элементов. Для того чтобы добавить новый проект в существующее решение, следует выполнить команду Add --> New Project в контекстном меню, связанном с узлом Solution. В этом случае откроется диалоговое окно, показанное на рисунке ниже, которое с небольшими изменениями унаследовано от предыдущей версии системы Visual Studio. Теперь шаблоны проектов можно сортировать и искать.

Добавление проекта в решение в Visual Studio

Панель, показанная на рисунке, справа, содержит информацию о выбранном проекте, например его тип и описание. В иерархии Installed, появляющейся в левой части диалогового окна Add New Project, шаблоны в первую очередь упорядочены по языкам, а затем по технологиям. Среди шаблонов прежде всего следует выделить типы Office, позволяющие создавать как приложение, так и надстройки для документов, как это принято в большинстве приложений подобного рода. Хотя надстройки Office по-прежнему используют набор инструментов Visual Studio Tools for Office (VSTO), теперь он встроен в систему Visual Studio и не требует отдельной инсталляции.

Предусмотрены также закладки Recent и Online. Шаблоны Online можно сортировать и искать точно так же, как Installed, хотя критерии сортировки для них являются более широкими и включают в себя дату создания, рейтинги и частоту загрузки.

При открытии существующих решений или проектов в системе Visual Studio 2013 они проходят все этапы работы с мастером обновлений (upgrade wizard), в ходе которых в файлы проектов и решений вносятся небольшие изменения. К сожалению эти небольшие изменения связаны с внедрением дополнительных свойств, которые разрушают существующий процесс сборки, если вы используете предыдущую версию системы сборки проектов MSBuild. По этой причине вы будете вынуждены перевести всю свою команду разработчиков на версию Visual Studio 2013.

Одной из наиболее неудачных и плохо понимаемых особенностей системы Visual Studio является концепция проекта Web Site. Этот проект отличается от проекта Web Application, который можно добавить с помощью диалогового окна Add --> New Project. Для того чтобы добавить проект Web Site, необходимо выполнить команду Add --> Web Site в контекстном меню, связанном с узлом Solution. Данная команда открывает диалоговое окно, похожее на то, которое показано на рисунке ниже. В этом окне можно выбрать тип создаваемого веб-проекта. В большинстве ситуаций при этом просто определяется тип создаваемого в проекте элемента, заданный по умолчанию.

Создание проекта Web Site в Visual Studio

Если вы работаете с одним или несколькими проектами, то сначала должны добавить элементы. Для этого выполните команду Add в контекстном меню, которое связано с узлом проекта в окне Solution Explorer. Первое подменю New Item запускает диалоговое окно Add New Item, как показано на рисунке ниже:

Добавление новых элементов в проект

Подобно диалоговым окнам New Project и New Web Site, диалоговое окно Add New Item подверглось "косметической операции". Кроме перечисления только тех шаблонных элементов, которые являются релевантными выбранному проекту, это диалоговое окно позволяет искать установленные шаблоны, а также выходить в режим онлайн для поиска шаблонов, созданных другими.

Возвращаясь к контекстному меню Add, вы заметите большое количество заранее определенных сокращенных команд, таких как User Control и Class. Они делают немного больше, чем простой пропуск стадии поиска подходящего шаблона в диалоговом окне Add New Item. Это диалоговое окно по-прежнему открыто, поскольку вы должны задать имя создаваемого элемента.

Важно понимать, что вы добавляете в проект элементы, а не файлы. Хотя многие шаблоны содержат только один файл, некоторые команды, например Window или User Control, добавят в ваш проект несколько новых файлов.

Добавление ссылок

Выпуская новые технологии разработки программного обеспечения, их авторы каждый раз обещают более удобное повторное использование кода, но в действительности лишь некоторые из них выполняют данное обещание. Один из способов, с помощью которого Visual Studio 2013 поддерживает повторное использование компонентов, основан на ссылках проекта.

Диалоговое окно Add Reference для добавления ссылок на сборки в проект

В старых версиях системы Visual Studio это диалоговое окно загружалось чрезвычайно медленно. Если компонент, который вам необходим, не указан в списке, выберите закладку Browse, позволяющую найти файл, содержащий искомые компоненты, непосредственно в файловой системе. Если вы заблаговременно загрузили список проектов в ваше решение, представили его как закладку по умолчанию и теперь неторопливо загружаете содержание для остальных закладок, то это диалоговое окно откроется на экране почти мгновенно.

Как и в других проектно-ориентированных средах разработки, начиная с первых версий среды VB, вы можете добавлять в проект ссылки, а не скомпилированные двоичные компоненты. Преимущество этой модели состоит в том, что теперь легче выполнять отладку компонента, на который указывает ссылка, и вы сможете гарантированно работать только с самыми последними версиями всех компонентов, хотя в больших решениях эта процедура может оказаться слишком неповоротливой.

Если ваше решение состоит из многих проектов (как правило, крупным считается решение, состоящее более чём из двадцати проектов), то можете разделить его на несколько решений, соответствующих разным подмножествам проектов. В этом случае вы обогатите свой опыт отладки целого приложения и одновременно повысите производительность системы Visual Studio на этапах загрузки и построения решения. В качестве альтернативы можете создать разные конфигурации построения решения, чтобы создать подмножество проектов.

Добавление ссылок на службы

Другой тип ссылок, который обслуживает проводник Solution Explorer, называется ссылками на службу (service references). В предыдущих версиях системы Visual Studio они назывались веб-ссылками, но с появлением программной модели Windows Communication Foundation (WCF) в систему Visual Studio была включена более общая команда меню Add Service Reference. Она открывает диалоговое окно Add Service Reference, показанное на рисунке ниже. В данном примере использована возможность открывать выпадающее меню с помощью кнопки Discover, чтобы просмотреть список Services в решении.

Добавление ссылки на службу в Visual Studio

В левом нижнем углу на рисунке показана кнопка Advanced. Диалоговое окно Service Reference Settings, которое открывается после щелчка на этой кнопке, позволяет вам указать, какие типы считаются частью ссылки на службу. По умолчанию считается, что все локальные системные типы соответствуют типам, опубликованным службой. Если это условие не выполняется, то уточните значения в области Data Туре, которая является частью этого диалогового окна. В левом нижнем углу диалогового окна Service Reference Settings расположена кнопка Add Web Reference, позволяющая добавлять в решение более привычные веб-ссылки. Это может оказаться важным, если вы ограничены в ресурсах или пытаетесь поддерживать работу в нескольких системах.

В чем разница между Build Solution, Rebuild Solution и Clean Solution в Visual Studio?

Когда подходящее время использовать каждый из них?

Является ли восстановление так же, как чистый, а затем построить?
    будет выполнять инкрементную сборку: если оно не думает, что нужно перестроить проект, оно не будет. Он также может использовать частично собранные биты проекта, если они не изменились (я не знаю, как далеко это займет) очистит, а затем создаст решение с нуля, игнорируя все, что было сделано ранее. Разница между этим и «Очистить с последующим построением» заключается в том, что Rebuild будет очищать, а затем строить каждый проект, по одному, а не очищать все, а затем собирать все. удалит артефакты сборки из предыдущей сборки. Если в целевых каталогах сборки (bin и obj) есть какие-либо другие файлы, они не могут быть удалены, но фактические артефакты сборки есть. Я видел поведение для этого различного - иногда удаляя довольно тщательно, а иногда нет - но я дам VS преимущество от сомнения на данный момент :)

(Ссылки на ключи командной строки devenv.exe , но они делают то же, что и пункты меню.)

@womp: Не в проекте, на который я только что смотрел. Там все еще есть все сборки . @Jon - странно. Я не помню, чтобы чистка никогда не убирала эти каталоги. Я делаю это прямо сейчас, и он стирает все .dll и .pdb файлы. Определенно, оставляю мой мусор ReSharper в покое. Я лично нашел «Чистое решение» более чем бесполезным. Если я действительно хочу, чтобы он был чистым, вручную удалите папки bin и obj. Даже были пойманы погони за фантомными «ошибками» - пока я этого не сделал. Чистота просто не надежна. если артефакты пробирались другими способами, а не через артефакты сборки (например, копия из другого источника, интегрированного как msbuidltask в cproj), тогда команда clean оставляет их без изменений. Что делает его в значительной степени бесполезным, я бы даже сказал, что это опасно, так как оно оставит вас с ложным чувством чистоты. @verdana: для github и т. д. проще иметь приличный .gitignore файл. Но согласно ответу, Clean не всегда делает особенно тщательную работу в моем опыте.

Построение решения: Компилирует файлы кода (DLL и EXE), которые изменяются.

Перестроить: Удаляет все скомпилированные файлы и компилирует их снова, независимо от того, изменился код или нет.

Чистое решение: Удаляет все скомпилированные файлы (DLL и EXE-файл).

Build vs Rebuild

Разница между Rebuild и (Clean + Build), потому что, кажется, есть некоторая путаница и в этом:

Разница в том, как последовательность сборки и очистки происходит для каждого проекта. Допустим, у вашего решения есть два проекта, «proj1» и «proj2». Если вы сделаете пересборку, она возьмет «proj1», очистит (удалит) скомпилированные файлы для «proj1» и соберет его. После этого потребуется второй проект «proj2», очистите скомпилированные файлы для «proj2» и скомпилируйте «proj2».

Но если вы выполните «очистку» и сборку », он сначала удалит все скомпилированные файлы для« proj1 »и« proj2 », а затем сначала соберет« proj1 », а затем« proj2 ».

Rebuild Vs Clean

Спасибо за объяснение, почему Rebuild не всегда работает, и мне часто нужно чистить перед сборкой. @JonCoombs Да, я не думаю, что первая блок-схема точно отражала то, что он сказал на видео. Я думаю, что изображение, которое я вставил - это то, к чему стремился Шивпрасад. Насколько я понимаю, если какой-либо файл изменился, проект очищается при обычной сборке, то есть он либо ничего не сделает, либо очистит, а затем соберет проект. Это правильно?

Сборка означает компиляцию и компоновку только исходных файлов, которые изменились с момента последней сборки, в то время как сборка означает компиляцию и компоновку всех исходных файлов независимо от того, изменились они или нет. Сборка - это нормальное занятие, которое выполняется быстрее. Иногда версии целевых компонентов проекта могут быть не синхронизированы, и для успешной сборки требуется перестройка. На практике вам никогда не нужно чистить.

Ссылка на сайт? Я думал, что идея DLL, или Dynamic Link Library, заключается в том, чтобы связать во время выполнения? «На практике вам никогда не нужно чистить» <- я звоню BS на этот раз. piers7, можете ли вы указать причину, по которой вам понадобится очистить против восстановления?

Построить решение - Сборка любых сборок, которые изменили файлы. Если в сборке нет изменений, она не будет перестроена. Также не будут удалены какие-либо промежуточные файлы.

Используется чаще всего.

Rebuild Solution - перестраивает все сборки независимо от изменений, но оставляет промежуточные файлы.

Используется, когда вы замечаете, что Visual Studio не включил ваши изменения в последнюю сборку. Иногда Visual Studio делает ошибки.

Чистое решение - удалить все промежуточные файлы.

Используется, когда ничего не помогает, и вам нужно все почистить и начать все заново.

@Jon Skeet - узнавать что-то новое каждый день. Я бы поклялся, что сделал перестройку. Я думаю, моя память не всегда так надежна, как хотелось бы.

Я просто думаю о Rebuild как о выполнении сначала Clean, а затем Build. Возможно, я ошибаюсь . комментарии?

У этого не было никаких голосов (до сих пор), и согласно документам (см. Ссылку в ответе Джона), это совершенно верно. Я не думаю, что это так. У меня есть ситуация, когда выполнение Чистого решения, за которым следует Build Solution, работает, но выполнить Rebuild Solution не удается. Это недавно созданное решение с двумя проектами (один зависит от другого). @Cthutu Смотрите ответ Shivprasad для деталей, которые имеют значение здесь. Rebuild очищает, а затем строит каждый отдельный проект за раз, тогда как запуск Clean сначала очищает все сразу, а затем Build строит все сразу. Я сталкивался с случаями, когда это изменение в порядке очистки / сборки также делает разницу между компиляцией и не компиляцией. @Sean Возможно, это было вызвано добавлением проекта в ваше решение file reference вместо того, project reference чтобы в порядке сборки проекта не распознавалось, что он должен был создать один проект раньше другого, а сборка не существовала там, где она должна была быть во время строить?

Построить решение - Сборка любых сборок, которые изменили файлы. Если в сборке нет изменений, она не будет перестроена. Также не будут удалены какие-либо промежуточные файлы.

Rebuild Solution очистит, а затем создаст решение с нуля, игнорируя все, что было сделано ранее.

Clean Solution удалит все скомпилированные файлы (т.е. EXE и DLL) из каталога bin / obj.

Решение Build будет строить любые проекты в решении, которые изменились. Rebuild собирает все проекты, независимо от того, что, чистое решение удаляет все временные файлы, обеспечивая завершение следующей сборки.

Решение для сборки - решение для сборки создаст ваше приложение с учетом количества проектов, в которых есть какие-либо изменения файла. И он не очищает существующие двоичные файлы и просто заменяет обновленные сборки в папке bin или obj.

Решение Rebuild - решение Rebuild создаст все ваше приложение с созданием всех проектов, доступных в вашем решении с их очисткой. Перед сборкой он очищает все двоичные файлы из папки bin и obj.

Чистое решение - Чистое решение просто очищает все двоичные файлы из папки bin и obj.

Построить решение

Это будет выполнять добавочную сборку. Другими словами, он будет создавать только файлы кода, которые изменились. Если они не изменились, эти файлы не будут затронуты.

Восстановить решение

Это удалит все скомпилированные в данный момент файлы (т.е. exe и DLL) и создаст все с нуля, независимо от того, есть ли изменение кода в файле или нет.

Меню чистого решения

Это меню удалит все скомпилированные файлы (т.е. EXE и DLL) из каталога bin / obj.

Перестроить = очистить + построить

Я думаю, что одна важная вещь - это то, что сборка и очистка - это задачи, которые выполняются на основе знаний Visual Studio о вашем проекте / решении. Я часто жаловался на то, что Clean не работает или оставляет оставшиеся файлы или не заслуживает доверия, хотя на самом деле причины, по которым вы говорите, что они не заслуживают доверия, на самом деле делают его более надежным.

Clean удаляет только (чистые) файлы и / или каталоги, которые фактически были созданы Visual Studio или самим компилятором. Если вы копируете свои собственные файлы или структуры файлов / папок, созданные из внешнего инструмента или источника, то Visual Studio не «знает, что они существуют» и, следовательно, не должен их трогать.

Можете ли вы представить, выполняла ли операция Clean в основном «del *. *»? Это может быть катастрофическим.

Build выполняет компиляцию измененных или необходимых проектов.

Перестройка выполняет компиляцию независимо от изменений или того, что необходимо.

Clean удаляет файлы / папки, которые он создал в прошлом, но изначально оставляет все, к чему он не имеет никакого отношения.

Читайте также: