重複の可能性:
GCCSTL境界チェック
g ++ STLにstd:vectorの自動デバッグバージョンのようなものはありますか?そうでない場合、どうすればそれを達成できますか?
私が欲しいのは、例えば私のg++呼び出しでデバッグパラメータを指定することです:
g++ -D DEBUG_ main.cpp
このパラメーターが定義されている場合、vector :: at()を使用する場合と同様に、すべてのstd::vectorが要素にアクセスするときに境界をチェックするようにします。
パラメータを省略した場合、すべてのベクトルを通常の[]演算子が使用されているかのように動作させます。つまり、境界チェックでパフォーマンスが「無駄」になることはありません。
VC++はこのようなことをしていると聞きました。だから私の質問は、g ++を使用してこれを行う方法ですか?