当前位置: 首页 > news >正文

C++内存检查

内存泄漏是程序中常见,也是最令人痛苦的一种bug。好在有一些检查工具可以帮助我们,这里介绍一个google 提供的简单直接的工具 Address-Sanitizer (ASAN)

预备条件

ASAN 原来是LLVM 中的特性,后来GCC 4.8中也开始支持。也就是说,如果采用 gcc 或者 clang编译的话,都是可以直接使用,无需额外安装的。

使用

只需要在 可以在CMakeLists.txt 中添加 set(CMAKE_CXX_FLAGS "$(CMAKE_CXX_FLAGS) -fsanitize=address -fno-omit-frame-point -static-libsan"),然后编译就好了。
也可以直接用
gcc -fsanitize=address -fno-omit-frame-point -static-libsan test.cpp -o test
不过这个是在 Linux 中。在windows中最后链接的动态库应该是 -static-libasan

http://www.lryc.cn/news/170073.html

相关文章:

  • 防火墙概述及实战
  • nginx代理故障总结
  • python爬虫爬取电影数据并做可视化
  • 哈希及哈希表的实现
  • CLIP 基础模型:从自然语言监督中学习可转移的视觉模型
  • 解读性能指标TP50、TP90、TP99、TP999
  • 【无标题】mysql 截取两个,之间字符串
  • 全局的键盘监听事件
  • Qt自定义QSlider(支持水平垂直)
  • 会话控制学习
  • dweb-browser阅读
  • ChatGPT:使用fastjson读取JSON数据问题——如何使用com.alibaba.fastjson库读取JSON数据的特定字段
  • 2、ARM处理器概论
  • 【Python】福利彩票复式模拟选号程序
  • Pytorch 机器学习专业基础知识+神经网络搭建相关知识
  • torch 和paddle 的GPU版本可以放在同一个conda环境下吗
  • MYBATIS-PLUS入门使用、踩坑记录
  • C# 静态类和sealed类(密封类)的区别
  • el-table如何实现自动缩放,提示隐藏内容
  • CRM客户管理软件对出海企业的帮助与好处
  • 【QT--使用百度地图API显示地图并绘制路线】
  • C数据结构二.练习题
  • 猫头虎博主第5️⃣期赠书活动:《Java官方编程手册(第12版·Java 17)套装上下册》
  • (1)数据库 MSQ 数据库 安装 使用 以及增删改查
  • 什么测试自动化测试?
  • 【踩坑篇】代码中使用 Long 作为 Map的Key存在的问题
  • 微服务保护-授权规则/规则持久化
  • 练习敲代码速度
  • uni-app:实现条件判断展示图片(函数判定+三目运算)
  • http概念