首页 > 其他分享 >shared_ptr包装this指针构造bug

shared_ptr包装this指针构造bug

时间:2023-07-17 12:44:29浏览次数:39  
标签:bug 包装 eat 析构 shared ptr 指针

目录

    • 成员函数里用shared_ptr包装this指针,当shared_ptr析构了,就会调用this对象的析构函数,是非常可怕的事情。
      class A {
         void eat() { 
            std::shared_ptr p(this);
            ptr->status = "吃了";
         }
      }
    
      void func() {
         A a;
         a.eat(); // eat里用shared_ptr包装了this,执行完就delete了a
         a.eat(); // 此时的a是被delete了的
      }
    

    标签:bug,包装,eat,析构,shared,ptr,指针
    From: https://www.cnblogs.com/majiao61/p/17559783.html

    相关文章

    • Visual Studio 中,Release、Debug、x86和x64 四个不同的概念
      Release和Debug是编译的不同配置,用于控制编译器生成的代码和符号信息的方式。Release配置用于生成最终发布版本的代码。在Release模式下,编译器会进行各种优化,以提高程序的性能和执行效率。此外,Release模式下会禁用一些调试相关的功能,如断言和运行时错误检查。它适用于最......
    • MyBatis Bug 记录
      动态SQLIf参数Mybatisif判断Integer类型的值不等于''引发的问题(!=''等价于!=0)csdn-ref结论对于Number类型参数,age!=''被Mybatis认定为age!=0解决方案✅使用1,2来表示数据含义✅添加orage==0,来规避该问题✅修改字段类型为varchar不使用N......
    • MySQL8 Bug 记录
      配置相关MySQL8安全插件更新导致的兼容性问题mysql8提供了新的功能,这些功能会影响用户创建或更新用户密码,以及使用那些仅支持mysql5登陆方式的客户端工具PasswordValidationOptionsandVariablesAuthenticationPlugins密码验证组件该组件要求用户必须设置符合一定......
    • TryHackMe | Daily Bugle Writeup
      TryHackMe|DailyBugleWriteup信息收集:可以看到cms是Joomla,然后有一个administrator二级目录,然后开启了mysql服务使用joomscan针对目标站点进行扫描,joomscan是一个专门用于扫描JoomlaCMS的工具。joomscan-uhttp://10.10.184.75 可以看到版本是Joomla3.7.0,到expl......
    • VS(VisualStudio) 远程调试 (RemoteDebugger)
      VS远程调试方法,下面用一张图说明:参考:https://blog.csdn.net/qq_33538554/article/details/98957450,下面是详情操作:注意:另一篇博文可以参考:https://mp.weixin.qq.com/s/G4m5v7l4kCwvM9LtKu0zVQ......
    • 106.nullptr和NULL
      106.nullptr和NULL1.NULL是什么在《NULL,0,'\0',"0","\0"的区别》一文中,我们已经知道了在C中NULL是什么,在C的头文件中,通常定义如下:#defineNULL((void*)0)但是在C++中,它是这样定义的:#defineNULL0可以在stddef.h看到完整的这段:#undefNULL#ifdefined(__cplusplus)#d......
    • 三台服务器配置简易Kafka集群+debug记录
      使用了3台阿里云服务器做实验,搭建kafka集群,可以通过java程序生产消息到云服务器。中途遇到许多问题,仅在此记录一些配置信息,安装过程省略。服务器信息hostname私网IP公网IPserver001172.24.16.13260.205.217.197server002172.17.67.3859.110.155.165server0......
    • 特殊符号引发的bug,C#去除不可作为文件名的特殊符号
      背景前段时间小编开发了一个控制台程序,把数据库中的数据取出来按照编码名称分别存储文件,存储文件之前检查是否存在当前文件,如果存在删除。开始小批量的数据还挺顺利的,当批量执行问题就来了,每次执行到一半时,创建的文件不增加反而变少了,经过日志捕捉才发现是字段里包含特殊符号惹的......
    • 记一下el-popover和el-tabs嵌套时tabs下划线显示不正确的bug
      在使用el-popover和el-tabs嵌套时出现了这样的bug,组件第一次生成时消息下面的蓝条会消失,需要手动点击之后才会重新出现,记录一下该问题,希望对同样遇到问题的同学有所帮助后来我通过这位博主(http://hk.aiuxian.com/article/p-eirtvdap-ne.html)了解到,这应该是elementui的bug,这位老......
    • 直播社交系统BUG有哪些?
      一、服务雪崩我们开始也解释了服务雪崩是什么意思,但一个服务失败,导致直播开发APP整条链路的服务都失败的情形,会严重影响到平台日常的服务效果,为解决这个方法,服务熔断和服务降级是不错的解决方案。1、服务熔断,当下游的服务因为某种原因突然变得不可用或响应过慢时,上游服务为了保......