Compuware の境界チェッカーに注意してください。ある程度安定しています。費用は約 3600 ドルで、毎年維持するのにほぼ同額です。しかし、それはコベリティに比べれば大したことではありません。過去 3 年間、Bounds Checker のすぐ下でうまく動作するテストを実行できませんでした。それが、私がもうそれを使用しない理由であり、小規模で小さなプロジェクト以外で使用することをお勧めしない理由です. 大規模なエンタープライズ アプリケーションでは、速度が遅すぎてメモリを消費し、動作が停止します。つまり、アプリケーションの起動に 5 分かかるようにしますか? テストの実行に 3 倍の時間がかかりますか? 何よりも悪いのは、ロックアップする傾向があることです。コンピュウェアのカスタマー サポートはかなり限定的でした。しかし、境界チェッカーは別の会社 (名前は思い出せません) に売却され、その会社の Web サイトは非常に無菌的でした。無菌で乾燥しているため、金融会社の Web サイトが面白く見えます。しかし、BoundsChecker の致命的な問題は、それが 32 ビットのみであることです。そのため、大量のメモリ (1 ギガ以上) を必要とする大規模なアプリケーションをプロファイリングする必要がある場合は、単に運が悪いだけです。Bounds Checker は、アプリから最大 2 ~ 3 ギガのメモリを消費します。また、32 ビット アプリでは、4 ギガが最高であることはよく知られています。
あなたがそれをベビーシッターするために人を雇うなら、Coverityは素晴らしいです. 真剣に、Coverity は私の家よりも高価です。それは言うまでもありませんが、私の会社が面倒なことをベビーシッターするために雇いすぎた人です。それが魔法になるには24時間かかります。また、コードを警告レベル 4 でコンパイルし、「コード分析」を有効にする (ビジュアル スタジオで) よりもはるかに多くの魔法は実行されません。
他のメモリ リーク ツールを試しました (ネイティブ コード用)。それらはすべて非常にうまくいかないか、複雑すぎるか、単純に古いシステムをロックします。私はメモリ プロファイラーの分野全体にうんざりしているので、デバッグ CRT の使用に戻りたいと思っています。それか、自分で書いてください。
コード カバレッジ ツールに関しては、Bullseye が圧倒的に有利です。メモリ リーク検出器がブルズアイのようにしっかりと機能しないのはなぜですか?