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)声明

相关推荐
良木生香18 分钟前
【C++初阶】STL——List从入门到应用完全指南(1)
开发语言·数据结构·c++·程序人生·算法·蓝桥杯·学习方法
伏加特遇上西柚19 分钟前
Loki+Alloy+Grafana日志采集部署
java·linux·服务器·spring boot·grafana·prometheus
zl_dfq20 分钟前
服务器设计细节 之 【eventfd、struct stat、stat接口】
服务器
WL_Aurora23 分钟前
【每日一题】贪心
python·算法
资源分享助手24 分钟前
三网H5小游戏战车向前冲搭建教程(Win+Linux)
linux·运维·服务器
无限进步_40 分钟前
Linux权限模型:从rwx到粘滞位
linux·运维·服务器
似是燕归来44 分钟前
WiFi 模块自动联网自带MQTT协议栈和云服务器串口透传免AT开发
服务器·esp32·wifi模块·mqtt协议
aqiu1111111 小时前
【并查集专题top】
c++·算法
会周易的程序员1 小时前
aiDgeScanner 工业设备网络扫描与管理工具
网络·c++·物联网·架构·electron·node.js·iot