標準ライブラリは効率のために最適化されていたりするので,fail safeではなかったり,あるいはassertが無かったりして,デバッグが大変.
GCCとClangの標準ライブラリには,debug modeがあるとのこと.
| コンパイラ | debug modeを使うためのマクロ | 参考情報 |
|---|---|---|
| GCC | _GLIBCXX_DEBUG |
Chapter 17. Debug Mode |
| Clang | _LIBCPP_DEBUG |
libc++ debug mode status |
例えば,上のマクロを-D_GLIBCXX_DEBUGという風に,コンパイラのコマンドラインオプションを利用して定義して使う.
試しに使ってみたところ,パフォーマンスへの影響が結構出た.