タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

VC++とVisual Studioに関するbabydaemonsのブックマーク (3)

  • 『メモリリークな話 その1』

    akusanのブログゲーム、プログラミングなどなど種々雑多に興味あるものをのせております。プログラミングはたまにコード自体を載せております。 最近、仕事でメモリリークの解析をしていてかなり大変な感じに・・・。 メモリリークは当に発見するのが難しい・・・。 しかも、諸事情により実行できないところがきついですね・・・。 ソースコードのみからやっているので・・・。 C、C++はメモリリークしやすいのはしょうがないことですが、 メモリリークをしないように確実にnewしたらdeleteをするのが重要ですよね~。 あとは、ライブラリで確実にInitializeしたら、terminateとかそういった操作が必要ですね。 メモリリークの解析手法の一つとして、Visual Studioならば、以下の関数を使うとツールを 必要とせずにメモリリークの検出ができます。 _CrtDumpMemoryLeaks()

    『メモリリークな話 その1』
    babydaemons
    babydaemons 2021/07/08
    _CrtDumpMemoryLeaks()
  • メモリリークの自動検出をしてみる - 閑古鳥

    VC++ のライブラリにはメモリリークの検出機能があります。関数ひとつ呼んでおくだけでアプリケーション終了時にメモリの解放漏れを出力ウィンドウに表示してくれるという便利なものなのですが、実際にこれを使うまでの過程に罠が多いのでメモしておきます。長すぎて我ながらわけがわからないので、興味のある方は最後の参考サイトだけ読んだらいいと思います。 使い方 普通に使う分には簡単です。 stdafx.h の末尾*1に : #if _DEBUG #define _CRTDBG_MAP_ALLOC #include <crtdbg.h> #define new new(_NORMAL_BLOCK, __FILE__, __LINE__) #endif と記述し、main 関数 (MFC であれば CWinApp::InitInstanceとか) 内部で ::_CrtSetDbgFlag(_CRTDBG_L

    メモリリークの自動検出をしてみる - 閑古鳥
    babydaemons
    babydaemons 2016/09/29
    あとから入れると心が折れるから、最初から入れて書くようにコーディング規約にするべきだよね。。。でも、もうC++はおなかいっぱいw
  • Visual Studioでリリースビルドをデバッグする - 小さい頃はエラ呼吸

    はじめに Visual Studio(VC++)には、リリースビルドとデバッグビルドの2つのビルドモードがあります。開発中は、デバッグビルドでバグを取り除き、テストが終わったらリリースビルドします。 VCのリリースビルドとデバッグビルドの違い - 虎塚 デバッグビルドでしかステップ実行ができないものと思っていましたが、リリースビルドでもステップ実行ができることがわかりました。 この記事では、リリースビルドでステップ実行する方法を紹介します。 デバッグではじめるCプログラミングposted with amazlet at 14.03.15山 貴光 翔泳社 売り上げランキング: 405,564 Amazon.co.jpで詳細を見る リリースビルドのプロパティを変更する ソリューションのプロパティを開き、以下の設定を行います。 1.「C++」→全般→デバッグ情報の形式で「プログラム データベー

    Visual Studioでリリースビルドをデバッグする - 小さい頃はエラ呼吸
    babydaemons
    babydaemons 2015/03/10
    変数を参照するには最適化を無効にする必要がある。。。orz
  • 1