shared_ptr做资源删除器
来源:互联网 发布:王小波与李银河 知乎 编辑:程序博客网 时间:2024/06/09 14:05
struct dialog_t
{
void fun(){
cout << "fun" << endl;
}
};
template<class T>
struct deleter_t
{
void operator () (T* t) const
{
if (t!= NULL)
{
cout << "delte" << endl;
delete t;
t = NULL;
}
}
};
int main()
{
{
auto const p = boost::shared_ptr<dialog_t>(new dialog_t, deleter_t<dialog_t>{});
p->fun();
}
getchar();
return 0;
{
void fun(){
cout << "fun" << endl;
}
};
template<class T>
struct deleter_t
{
void operator () (T* t) const
{
if (t!= NULL)
{
cout << "delte" << endl;
delete t;
t = NULL;
}
}
};
int main()
{
{
auto const p = boost::shared_ptr<dialog_t>(new dialog_t, deleter_t<dialog_t>{});
p->fun();
}
getchar();
return 0;
}
利用shared_ptr管理资源
高级用法
void any_func(void *p)
{
cout << "some sth" << endl;
}
boost::shared_ptr<void> A_ptr((void*)0, any_func);
离开作用域调用 any_func。
0 0
- shared_ptr做资源删除器
- shared_ptr之定制删除器
- Effective C++之利用std::tr1::shared_ptr指定“删除器”实现对底层资源“引用计数”
- shared_ptr:定制删除器 和 循环引用
- 浅析shared_ptr 和weak_ptr、定制删除器
- shared_ptr中使用了 FILE* 添加删除器的用法
- 【C++】智能指针shared_ptr 定位删除器(仿函数)
- shared_ptr之循环引用&定置删除器
- C++实现智能指针(shared_ptr和unique_ptr)与删除器
- Boost:使用shared_ptr封装资源句柄
- Boost:使用shared_ptr封装资源句柄
- 基于shared_ptr的通用资源池
- 以对象管理资源------auto_ptr shared_ptr
- 以对象管理资源 auto_ptr和shared_ptr
- Boost:使用shared_ptr封装资源句柄
- shared_ptr的资料及与删除器使用遇到的问题
- 智能指针的模拟实现shared_ptr 循环引用 定置删除器
- 智能指针(模拟实现auto_ptr,shared_ptr,scooeptr 以及定制删除器c++ 实现)
- elasticsearch在windows下的安装
- 编程打印三角形数字图案.java
- 华为S2403H做镜像端口
- hdu 2795 Billboard(线段树)
- java装饰者模式
- shared_ptr做资源删除器
- android开发必备知识:ndroid使用全局变量
- STM32f103的电阻触摸屏的五点校正算法
- hls流媒体、传统流媒体、http流媒体、adobe流媒体
- MySQL使用经验总结
- 如何开机进入文本模式
- SVN插件
- 不同进程间切换
- OS X 10.10 编译APUE Third Edition 源码