tr1::shared_ptr 代码范例
来源:互联网 发布:大数据产业链包括 编辑:程序博客网 时间:2024/04/30 11:32
#include <memory>
#include <iostream>
#include "vector"
#include "list"
#include "Person.h"
using namespace std;
//using namespace tr1;
// Cuse_autoDeleteDlg 对话框
typedef tr1::shared_ptr<CPerson> PtrPerson;
#include <iostream>
#include "vector"
#include "list"
#include "Person.h"
using namespace std;
//using namespace tr1;
// Cuse_autoDeleteDlg 对话框
typedef tr1::shared_ptr<CPerson> PtrPerson;
typedef tr1::weak_ptr<CPerson> PtrWeakPerson; //expired()用于检测所管理的对象是否已经释放
// 声明变量
list<PtrPerson > m_vecPersons;
//初始化
m_vecPersons.push_back(PtrPerson(new CPerson));
m_vecPersons.push_back(PtrPerson(new CPerson));
m_vecPersons.push_back(PtrPerson(new CPerson));
m_vecPersons.push_back(PtrPerson(new CPerson));
m_vecPersons.push_back(PtrPerson(new CPerson));
//调用
for (auto it = m_vecPersons.begin() ; it != m_vecPersons.end(); ++it)
{
PtrPerson& pPerson = (*it);
CString strOutput;
strOutput.Format(_T("%s,%d \n"),
pPerson->m_strName,pPerson->m_age);
OutputDebugString(strOutput);
TRACE(_T("use_count = %d \n"),pPerson.use_count());
}
m_vecPersons.clear(); //new出来的内存会自动释放
结论:
很实用的智能指针。
再也不用管理内存的delete问题了。
0 0
- tr1::shared_ptr 代码范例
- std::tr1::shared_ptr
- auto_ptr 和 tr1::shared_ptr
- std::tr1::shared_ptr
- std::tr1::shared_ptr、std::tr1::weak_ptr及std::tr1::enable_shared_from_this
- boost::shared_ptr与std::tr1::shared_ptr
- 智能指针tr1::shared_ptr、boost::shared_ptr使用
- C++ std::tr1::shared_ptr使用
- std::tr1::shared_ptr源码赏析
- C++ std::tr1::shared_ptr使用说明
- C++ std::tr1::shared_ptr使用
- std::auto_ptr和tr1::shared_ptr的用法
- 智能指针 tr1::shared_ptr和auto_ptr
- std::tr1::shared_ptr 使用的一点体会
- C++学习 std::tr1::shared_ptr、std::tr1::weak_ptr及std::tr1::enable_shared_from_this
- C++:智能指针-TR1的shared_ptr和weak_ptr使用介绍
- vs2008 error C2039: “shared_ptr”: 不是“std::tr1”的成员
- c++中关于智能指针std::tr1::shared_ptr的用法
- 发布一个PCK 查看工具,直接查看DDS图片和文本——已更新1.20(C++源代码)
- Linux下安装nginx
- 第七单元 7.10
- 利用Apache POI读写Microsoft Excel文件
- git 找回代码纪录
- tr1::shared_ptr 代码范例
- oracle 导出数据到文件
- android_launcher的源码详细分析
- Android简化一个界面内的多个Listener
- HackerRank String
- gcc编译器家族
- Android 百分比布局库(percent-support-lib) 解析与扩展
- 异常 java.lang.UnsatisfiedLinkError,so库没有加载
- Largest Number