double free detected in tcache 2问题记录
double free detected in tcache 2问题记录
代码语言:javascript代码运行次数:0运行复制#include <iostream>
class A {
public:
void Test() {
std::cout << "A::Test" << std::endl;
double free detected in tcache 2问题记录
代码语言:javascript代码运行次数:0运行复制#include <iostream>
class A {
public:
void Test() {
std::cout << "A::Test" << std::endl;
delete this;
}
};
class B : public A {
public:
void Test() {
std::cout << "B::Test" << std::endl;
}
};
int main() {
A* b = new B();
b->Test();
free(b);
return 0;
}
解释,当执行free(b);时会报错,因为在 b->Test();调用时已经执行了delete this;将堆区的内存释放掉,此时再次根据b的地址去释放会发现不存在,所以报错double free detected in tcache 2
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-12-19,如有侵权请联系 cloudcommunity@tencent 删除std内存doublefreepublic#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
上传时间: 2025-07-26 21:19:51
推荐阅读
留言与评论(共有 20 条评论) |
本站网友 湖滨租房 | 30分钟前 发表 |
本站网友 孱弱 | 21分钟前 发表 |
endl; } }; int main() { A* b = new B(); b->Test(); free(b); return 0; }解释 | |
本站网友 新包青天片尾曲 | 20分钟前 发表 |
本站网友 硅胶假体隆鼻永久吗 | 20分钟前 发表 |
原始发表:2024-12-19 | |
本站网友 夫妻共同贷款 | 20分钟前 发表 |
所以报错double free detected in tcache 2本文参与 腾讯云自媒体同步曝光计划 | |
本站网友 2poi | 6分钟前 发表 |
本站网友 女性高嘲 | 23分钟前 发表 |
cout << "A | |
本站网友 黄明全 | 14分钟前 发表 |
本站网友 心脏杂音听诊 | 19分钟前 发表 |
因为在 b->Test();调用时已经执行了delete this;将堆区的内存释放掉 | |
本站网友 长宁房屋出租 | 21分钟前 发表 |
分享自作者个人站点/博客 | |
本站网友 记忆力提高 | 17分钟前 发表 |
如有侵权请联系 cloudcommunity@tencent 删除前往查看std内存doublefreepublic | |
本站网友 我是大冶人 | 12分钟前 发表 |
因为在 b->Test();调用时已经执行了delete this;将堆区的内存释放掉 | |
本站网友 李正帆 | 27分钟前 发表 |
本站网友 职业压力 | 19分钟前 发表 |
本站网友 四维彩超图片 | 1分钟前 发表 |
如有侵权请联系 cloudcommunity@tencent 删除前往查看std内存doublefreepublic | |
本站网友 三鹿牛奶事件 | 5分钟前 发表 |
本站网友 色吧111 | 16分钟前 发表 |
分享自作者个人站点/博客 | |
本站网友 早泄的中药方 | 7分钟前 发表 |
void Test() { std | |
本站网友 微波炉菜 | 7分钟前 发表 |
cout << "A |