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

相关推荐
感哥16 小时前
C++ 面向对象
c++
CoovallyAIHub18 小时前
中科大DSAI Lab团队多篇论文入选ICCV 2025,推动三维视觉与泛化感知技术突破
深度学习·算法·计算机视觉
沐怡旸18 小时前
【底层机制】std::shared_ptr解决的痛点?是什么?如何实现?如何正确用?
c++·面试
NAGNIP19 小时前
Serverless 架构下的大模型框架落地实践
算法·架构
moonlifesudo19 小时前
半开区间和开区间的两个二分模版
算法
moonlifesudo19 小时前
300:最长递增子序列
算法
CoovallyAIHub1 天前
港大&字节重磅发布DanceGRPO:突破视觉生成RLHF瓶颈,多项任务性能提升超180%!
深度学习·算法·计算机视觉
感哥1 天前
C++ STL 常用算法
c++
CoovallyAIHub1 天前
英伟达ViPE重磅发布!解决3D感知难题,SLAM+深度学习完美融合(附带数据集下载地址)
深度学习·算法·计算机视觉
saltymilk1 天前
C++ 模板参数推导问题小记(模板类的模板构造函数)
c++·模板元编程