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

相关推荐
小糯米6015 小时前
C++ 树
数据结构·c++·算法
liliangcsdn5 小时前
IMPALA强化学习算法的学习和解读
学习·算法
再难也得平5 小时前
[LeetCode刷题]283.移动零(通俗易懂的java题解)
java·算法·leetcode
不想看见4045 小时前
House Robber 基本动态规划:一维--力扣101算法题解笔记
笔记·算法·leetcode·代理模式
能源革命5 小时前
Ubuntu24.04修改ssh默认端口
linux·服务器·ssh
掘根5 小时前
【C++STL】红黑树(RBTree)
数据结构·c++·算法
我笑了OvO5 小时前
常见位运算及其经典算法题(1)
c++·算法·算法竞赛
Zevalin爱灰灰5 小时前
方法论——如何设计控制策略架构
算法·架构·嵌入式
wostcdk5 小时前
基础算法学习1
算法
Yzzz-F6 小时前
2026牛客寒假算法基础集训营1
算法