C++智能指针

智能指针指的是在指针生存期结束后能自动释放的指针

cpp 复制代码
class c
{
    public:
    c()
    {
        cout<<"create c"<<endl;
    }
    ~c()
    {
        cout<<"delete c"<<endl;
    }
};


void test()
{

    auto p1(new c);
    unique_ptr<c> p2(new c);
}

int main(int argc,char *argv[])
{
    test();
    return 0;
}

运行结果

可以看到普通指针p1在生存周期结束前未释放申请的内存(析构未调用),而智能指针unique_ptr在生存期结束时自动delete(调用析构函数)

智能指针不是普通的指针,通过(new)声明

相关推荐
飞行增长手记12 小时前
IP协议从跨境到物联网的场景化应用
服务器·前端·网络·安全
ULTRA??12 小时前
ROS Action 完整示例(AI辅助):客户端发目标 + 服务器接参数(lambda 替代 boost::bind)
c++·python
碧波bibo12 小时前
【算法突破】【C++】 第一篇 数组
c++·算法
GDAL12 小时前
客户端与服务器SSL协议/加密套件不兼容:完整解决方案
服务器·ssl
45288655上山打老虎12 小时前
【智能指针】
开发语言·c++·算法
稚辉君.MCA_P8_Java12 小时前
Gemini永久会员 go数组中最大异或值
数据结构·后端·算法·golang·哈希算法
瀚高PG实验室13 小时前
如何将HGDB安全版(RPM包形式)安装在非root用户下
服务器·网络·安全·瀚高数据库
水饺编程13 小时前
第3章,[标签 Win32] :WM_CREATE 消息的产生
c语言·c++·windows·visual studio
Michelle802313 小时前
机器学习实战操作手册
人工智能·算法·机器学习
python百炼成钢13 小时前
50.linux_USB驱动
linux·运维·服务器·驱动开发