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

相关推荐
历程里程碑4 分钟前
C++ 8:list容器详解与实战指南
c语言·开发语言·数据库·c++·windows·笔记·list
小尧嵌入式9 分钟前
C++11线程库的使用(上)
c语言·开发语言·c++·qt·算法
Cat God 00712 分钟前
CentOS 搭建 SFTP 服务器(三)
服务器·python·centos
Cat God 00717 分钟前
CentOS 搭建 SFTP 服务器(二)
服务器·centos·numpy
蓝色汪洋18 分钟前
luogu填坑
开发语言·c++·算法
暗然而日章24 分钟前
C++基础:Stanford CS106L学习笔记 9 类模板(Class Templates)
c++·笔记·学习
小年糕是糕手32 分钟前
【C++同步练习】类和对象(三)
开发语言·jvm·c++·程序人生·考研·算法·改行学it
Learner__Q34 分钟前
每天五分钟:leetcode动态规划-递归与递推_day2
算法·深度优先
代码游侠37 分钟前
学习笔记——Linux内核链表
linux·运维·笔记·学习·算法·链表