C言語やC++の欠点の一つは,バッファオーバーフローやオーバーランが起こりやすいことです. それは欠点であると同時にC/C++の利点であると言う人もいます.つまり,メモリ関連のチェックを省略することで,省略した分C/C++はオーバヘッドが少ない高速なプログラムが生成できるというものです.しかしバッファオーバーフローやオーバーランはプログラムのクラッシュやセキュリティホールを招く危険な「バグ」であることには変わりありません. そこで最近のC/C++のコンパイラはコンパイル時のオプションでオーバーフローのチェックをOn/Offできるようになっています. オプションは大雑把に分類すると コンパイル時に,静的に,オーバーフローのチェックするもの 実行時に,動的に,オーバーフローのチェックするもの に大別できます. これらオプションのデメリットは コンパイル時のオーバヘッドが増える.つまりコンパイル