c++ - 通用 Windows 平台上的内存泄漏检测

标签 c++ memory-leaks windows-10-universal

在我的应用程序中,我希望 C++ 运行时库自动检测内存泄漏。在 Win32 应用程序中,通过添加以下代码可以很好地工作:

#if defined(_DEBUG) || defined(DEBUG)
    _CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );
#endif

不幸的是,在通用 Windows 应用程序中,这没有效果。我试图手动调用 _CrtDumpMemoryLeaks(),但我真的找不到合适的地方来执行此操作。我将不胜感激任何建议。谢谢!

最佳答案

Win32 和 UWP 应用程序是完全不同类型的应用程序,因此某些库可能会在任一平台上运行。

您可以通过在 Visual Studio 中运行内置的内存使用和性能诊断工具来检查内存泄漏。您可以收集不同的内存快照并在内存工具中进行比较。请通过 thisthis了解更多技术介绍和实现。

关于c++ - 通用 Windows 平台上的内存泄漏检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48133199/

相关文章:

c++ - 是否有误报 valgrind "possibly lost"报告的简单示例?

Android Webview GIF 堆随着时间的推移急剧增长

ios - 呈现 UIImagePickerController 时检测到泄漏

xaml - 自定义MessageDialog的样式

C++:将十六进制转换为十进制

java - 我将如何着手制作高效的键值存储(例如内存缓存)/简单数据库?

c++ - 在 Azure Pipelines 中安装 Windows SDK 8.1 版本

c# - 在非 UWP 应用程序中使用 Windows Mixed Reality

c# - UWP Windows-10 加载图像的更好方法

c++ - 按分配给 const 引用的值返回