C++ 智能指针所有用法解析
发布时间
阅读量:
阅读量
为何要了解智能指针?
这个问题并非针对在场的各位,而是我对自己提出的疑问!
回想当初刚从学校毕业,四处寻找实习机会时,有一次面试中需要完成一道题目;题目内容是解释什么是智能指针。我当时顿时感到一片茫然,因为从未接触过这个概念……
最终,那份面试机会自然也就失去了。
大约是在一年前,如今趁着空闲时间,我决定学习智能指针,以此提升自身的技术能力!
一、为什么要使用智能指针
简要而言,智能指针是一种专为C++开发人员设计的工具,其主要功能在于对通过动态分配方式获取的内存资源进行有效管理,能够自动执行new操作所分配内存的释放过程,从而防止出现内存泄漏的问题!
以下示例展示了一个典型的内存泄漏情形:
#include <iostream>
#include <string>
#include <memory>
using namespace std;
// 动态分配内存,没有释放就return
void memoryLeak1() {
string *str = new string("动态分配内存!");
return;
}
// 动态分配内存,虽然有些释放内存的代码,但
全部评论 (0)
还没有任何评论哟~
