Visual Studio 2008のvC++でのDEBUGと_DEBUGの違いは何ですか?私のプロジェクトでは、一部のモジュールのプリプロセッサでDEBUGがあり、一部のモジュールで_DEBUGなので違いがあります。DEBUG vs _DEBUG
8
A
答えて
5
独自のコードでは、どのマクロを使用するかは問題ではありません。
ただし、使用するライブラリの動作が異なる場合があります。例えば。 assert
に関するMSDNドキュメント
アサーションステートメントは、_DEBUGが定義されている場合にのみコンパイルされます。 _DEBUGが定義されていない場合、コンパイラはアサーションをヌル文として扱います。
ですから、常に_DEBUG
を使用することをお勧めします。
編集:はMSDNによると、あなたも、あなたがデバッグランタイムライブラリを指定すると、コンパイラはできるだけ早くあなたのためにそれを行いますので、特別なデバッグマクロを定義する必要はありません。
2
実際に定義されているマクロの使用方法によって異なります。私が知っているように、デフォルトのVS2008 C++プロジェクトにはデバッグ設定用に_DEBUGが定義されています。あなたのプロジェクトにはカスタムDEBUGマクロも定義されているかもしれません。 DEBUG定義を検索してみてください。
デフォルトでは、常に_DEBUGを使用する必要があります。
1
プロジェクトのコード生成設定が "debug"のものであれば、_DEBUGマクロはコンパイラによって定義されます。 対応するコンパイラオプションは /MDDマルチスレッドDLL、libcに動的リンク、DEBUG /MLdをシングルスレッドのlibcに静的リンケージ、DEBUG(VC6) /MTdにマルチスレッド、libcに静的リンケージ、DEBUG
ありますコンパイラオプション/ LDdも_DEBUGマクロを定義します。
DEBUGマクロは、しばしばDebug-Project-Settingで明示的に定義されます。
関連する問題
- 1. .NETコンパイラ - DEBUG vs. RELEASE
- 2. web.config、web.debug.config、web.release.config&Publish vs Debug?
- 3. Qt Creater _Debug Constant
- 4. 劇的なパフォーマンスの違い:debug vs release
- 5. VS 2008プロジェクトのDEBUGとRELEASEバージョンのConfigurationManagerの使用方法
- 6. git - "debug"ブランチ、 "debug"なしの "fix"ブランチ
- 7. デバッグモードでMFCで鬼をコンパイルする問題があります_DEBUGモード
- 8. Debug Flash Media Server
- 9. Eclipse/PyDev + Django debug
- 10. BlackBerry Debug Output
- 11. debug rails 3.1.1 application
- 12. iOS - XCode debug
- 13. ruby-debugとキュウリ
- 14. debug some PHP code
- 15. DEBUG = True Django
- 16. WebDeployとDebugビルド
- 17. いつ、どこで_DEBUGが定義されていますか?
- 18. debug ssis package - reload InnerPackage.dtsx
- 19. Facebook debug returns 403 Forbidden
- 20. debug ajax php netbeans xdebug
- 21. Debug/http-bind/issue Openfire
- 22. debug = "false"の問題
- 23. Eclipseのショートカット「debug last debug configuration」(F11ではない)
- 24. Xcode - リンカのライブラリ警告 - Debug-iphonesimulatorとDebug-iphoneos
- 25. bin \ debugとobj \ debug:違いは何ですか?
- 26. ASPX/ASCXページの#if DEBUG
- 27. windows ruby debug ide gem install fail
- 28. DebugとReleaseフォルダの違い
- 29. @ServiceHost Debug = "true" - パフォーマンスの低下?
- 30. debug IE6 Eclipse内のJavaScript
関連:['_DEBUG'対NDEBUG'](http://stackoverflow.com/questions/2290509/) –