Какая разница в отладке в режиме отладки и режиме выпуска? В режиме освобождения таблица символов, которая загружается, содержит меньше информации о символах, что означает меньшую информацию об отладке. Но если мы установили «Disabled (/ Od)» в C/C++ -> Оптимизация-> Оптимизация, то я не мог видеть разницы в двух типах отладки. Есть ли разница в режиме отладки и режиме деблокирования (при отключенной оптимизации)?В чем отличие отладки в режиме отладки и режиме деблокирования с отключенной оптимизацией?
2
A
ответ
3
Там очень мало магии. Debug and Release - это просто имена, назначенные набору параметров компилятора. Наиболее подходящим вариантом для конфигурации Debug является опция/Od, она отключает оптимизатор, поэтому ваш код легче отлаживать.
Очевидно, что вы всегда можете изменить параметры конфигурации выпуска, чтобы они соответствовали параметрам конфигурации Debug. Как отключить оптимизатор. Теперь между ними нет никакой существенной разницы, и настройка Release ведет себя так же, как конфигурация Debug в отладчике.
Других вариантов обычно используются в конфигурации отладки, которая влияет на ваш код:
- _DEBUG макрос определен, утверждает сгорит
- функции встраивания выключено
- параметр/RTC включен , очень хорошо при ловле ошибок в вашем коде
- макрос _HAS_ITERATOR_DEBUGGING определяется, перехватывает ошибки в коде, который использует классы STL
- вы свяжетесь с отладочной сборкой t он CRT, позволяя утверждает, что строить
- отладки Распределитель будет включен, если вы #included crtdbg.h
- редактировать + продолжать поддержка включена, побочный эффект намного больше стек кадры
Смежные вопросы
- 1. Развертывание в режиме отладки и режиме деблокирования
- 2. Сбой в режиме деблокирования и ошибка в режиме отладки
- 3. Оптимизация в режиме отладки
- 4. ObjectContext public в режиме отладки, внутренний в режиме деблокирования
- 5. Ошибка компиляции в режиме деблокирования, но не в режиме отладки
- 6. OpenGL отображает в режиме деблокирования, но не в режиме отладки
- 7. Разница в точности для Double в режиме деблокирования/режиме отладки
- 8. Докер в режиме отладки
- 9. поведение Watin в режиме отладки отличается, чем в обычном режиме
- 10. Deserialization в режиме отладки?
- 11. dll в режиме отладки, вызывающая программа в режиме деблокирования (и наоборот)
- 12. Gzip ASP.NET в режиме отладки
- 13. Почему приложение работает в режиме деблокирования, но не в режиме отладки?
- 14. automapper отлично работает в режиме отладки, но выбрасывает отображение в режиме деблокирования
- 15. Android: 60 fps в режиме отладки, но замедляется в режиме деблокирования
- 16. Сбой приложения в режиме деблокирования
- 17. Работает только в режиме отладки
- 18. Можно ли использовать proguard в режиме отладки?
- 19. Ошибка приложения UWP Windows 10 в режиме деблокирования, но отлично работает в режиме отладки
- 20. Код работает в режиме отладки
- 21. Против отладки в режиме освобождения
- 22. Отладка в режиме отладки или флаг режима деблокирования без работы отладки
- 23. Curl CURLE_COULDNT_RESOLVE_HOST в режиме отладки
- 24. Запуск RSpec в режиме отладки
- 25. Мой код работает в режиме отладки, но не в режиме деблокирования
- 26. Простая команда OpenCV работает в режиме отладки, но не в режиме деблокирования
- 27. C# windows app OK в режиме отладки, неисправный в режиме деблокирования
- 28. Application Insights в режиме отладки
- 29. Перезапуск программы в режиме отладки
- 30. Ошибка приложения в режиме деблокирования, а не в режиме отладки - Xamarin Forms
Тогда означает ли это, что режим освобождения без оптимизации в буквальном смысле равен режиму отладки? Если да, то почему dll не загружается при загрузке dll в режиме отладки? или наоборот. –
Не «буквально», я перечислил другие параметры, которые обычно отличаются в конфигурации Debug./Od - безусловно самая важная разница, оптимизатор делает отладки довольно сложной. Вы не упоминаете «не загружать», прежде чем смешивать несколько версий CRT в одной программе, как правило, довольно сложно. 5-й маркер в списке, вы хотите избежать использования как отладочной, так и выпускной версий ЭЛТ. Легко избежать, пока вы держите проекты DLL и EXE в одном и том же решении. –