Отличие Debug от Release в Visual Studio

Просмотров: 26000Комментарии: 0
ВкусняшкиFAQ Solution

Начинающим и берущим небольшие Азы с Visual Studio очень часто интересно, чем-же отличаются 2 версии, а точнее Debug от Release. Но все это очень просто, даже исходя из названия. Главное различие состоит в назначении: конфигурация Debug предназначена для компиляции на этапе разработки и отладки программы, а Release - для сборки программы и последующего её использования пользователями программы.

В конфигурации Release удаляется отладочная информация из исполняемого файла. Это приводит к уменьшению размера исполняемого файла (обычно в несколько раз). Так же исключаются дополнительные проверки. Например, инициализированы переменные или нет:

#include <iostream>
int main()
{
    int x;
    std::cout << x << std::endl;
    return 0;
}

Из приведённого выше рисунка видно, что в конфигурации Release никаких проверок не осуществляется, а в конфигурации Debug они есть. Так в STL, например, производятся дополнительные проверки итераторов перед операциями инкремента и декремента:

Поэтому в конфигурации Release программа может работать значительно быстрее, но и могут возникнуть новые ошибки, если код недостаточно хорошо написан и протестирован.

Вот и все.

С уважением Ваш ИТ Инженер.



Уникальный проект на рынке недвижимости, следи за тем как растут цены на недвижимость, прогнозируй рост.

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

Вы можете войти под своим логином или зарегистрироваться на сайте.

(обязательно)