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 小时前
从零实现一个分布式配置中心:服务发现与热更新
c++
bIo7lyA8v12 小时前
算法复杂度的可视化评估与优化策略研究的技术8
算法
省四收割者12 小时前
从硬件中断到分布式协程:全景解构高并发机制与 C / Golang 的巅峰对决
c++·分布式·嵌入式硬件·golang
艾莉丝努力练剑12 小时前
【Linux网络】多路转接select
java·linux·运维·服务器·网络·tcp/ip
Cx330❀12 小时前
【Linux网络】从零定制应用层协议:黏包问题、全双工缓冲区与 Jsoncpp 序列化深度解析
linux·运维·服务器·开发语言·网络·c++·人工智能
Benszen12 小时前
云计算基础-5:Linux 重定向与管道
linux·运维·服务器
Skrrapper12 小时前
从 DeepSeek、Qwen 到 GPT:一次企业级 AI 知识库项目的模型选型复盘
人工智能·gpt·算法
江屿风12 小时前
C++图论基础Bellman-Ford与spfa算法如何判断负环
开发语言·c++·笔记·算法·图论
YHHLAI12 小时前
LeetCode 136.只出现一次的数字 | 从遍历统计到位运算极致优化
算法·leetcode·职场和发展
艾莉丝努力练剑12 小时前
【Linux网络】五种IO模型与非阻塞IO
linux·运维·服务器·开发语言·网络·tcp/ip