您现在的位置是:首页 > 编程 > 

double free detected in tcache 2问题记录

2025-07-28 15:16:26
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组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1239430.html

相关标签:无
上传时间: 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