誰でも、C++用のメモリメモリリーク検出ツールを見つけることができます。このツールは、コマンドラインで実行することも、WindowsおよびLinuxでEclipseプラグインとして実行することもできます。私はそれを使いやすいものにしたいと思います。好ましくは、new()、delete()、malloc()またはfree()を上書きしないものです。コマンドラインにGDBのようなものがありますが、メモリリークの検出に使用されていることは覚えていません。これを自動的に行うユニットテストフレームワークがあれば、それは素晴らしいでしょう。G ++マルチプラットフォームメモリリーク検出ツール
この質問は、他の質問(Memory leak detection under Windows for GNU C/C++など)と似ていますが、私はそれが違うと感じています。ここでもう少し具体的なものを探しているように感じます。提案はすべての要件を満たす必要はありませんが、可能な限り多くは良いでしょう。
ありがとうございました。
編集:私はライブラリを#includeするか、そうでなければC++でコードをコンパイルする方法を変更する必要があるものを "上書き"することで、これを実行時に実行すると、違う環境は素晴らしいものには影響しません。また、残念ながら私はMacを持っていないので、そのための提案は役に立たないが、試してくれてありがとう。私のデスクトップはWindowsを実行しています(私はLinuxがインストールされていますが、私のデュアルモニターはそれで動作しません)、確かにオプションですが、VMでLinuxを実行したくないです。私のラップトップはLinuxを使用しているので、私はそこでそのツールを使用することができますが、デスクスペースをあまり使わないでも画面のスペースが優れているため、 。
注:私は答えを試してみることができますが、私は提案を試してみるまで満足できるものとしてマークしません。
EDIT2:私のコードのプラットフォーム間の互換性については心配していませんが、C++ライブラリだけを使用するコマンドラインアプリケーションです。
あなたは* nix上のWindowsアプリケーションを、WineをAPI実装として再コンパイルすることを意味しますか? (私はちょうど興味があります) – olliej
valgrindはx86_64、PowerPC、MIPS、ARMなどのアーキテクチャで動作します。 – LiraNuna
いいえ、あなたのWindowsバイナリを、変更されていないLinux上で、valgrind下のワイン自体の下で実行することを意味します。だから、私は32ビットのみを言いました:valgrindは64ビットサポートのワインの下でアプリケーションを実行することはできず、64ビットサポートを持つワインは実験的です(64ビットで、私は64ビットのWindowsアプリケーションを実行します) –