简单的计数智能指针实现
来源:互联网 发布:武汉科瑞财富网络 编辑:程序博客网 时间:2024/05/01 15:03
template<class T>class myCountPtr{ public: T *p_re; int *count; public: explicit myCountPtr(T *p=0):p_re(p),count(new int(1)){ } myCountPtr( const myCountPtr<T>& rhs):p_re(rhs.getRe()),count(rhs.getCount()) { ++(*count); } T* getRe()const{return p_re;} myCountPtr<T>& operator=(const myCountPtr<T>& rhs) { if(this!=&rhs) { depose(); p_re=rhs.getRe(); count=rhs.count; ++(*count); } return *this; } T & operator*(){return *p_re;} T* operator->(){return p_re;} ~myCountPtr() { depose(); } int *getCount(){return count;} void depose() { if(--(*count)==0) { delete count; delete p_re; } }};int main(){ myCountPtr<string> p1(new string("hello")); cout<<*p1<<" "<<*(p1.getCount())<<endl; myCountPtr<string> p2; p2=p1; cout<<*p2<<" "<<*(p2.getCount())<<endl; cout<<*p1<<" "<<*(p1.getCount())<<endl;}
0 0
- 简单的计数智能指针实现
- C++ 引用计数技术及智能指针的简单实现
- C++ 引用计数技术及智能指针的简单实现
- C++ 引用计数技术及智能指针的简单实现
- C++ 引用计数技术及智能指针的简单实现
- C++ 引用计数技术及智能指针的简单实现
- C++引用计数技术及智能指针的简单实现
- C++ 引用计数技术及智能指针的简单实现
- 带引用计数的智能指针实现
- 基于引用计数的智能指针实现
- 引用计数板的智能指针实现
- 非常经典的C++ 引用计数技术及智能指针的简单实现
- [置顶]C++ 引用计数技术及智能指针的简单实现
- C++ 引用计数技术及智能指针的简单实现及改进
- 智能指针的简单实现
- 智能指针的简单实现
- 智能指针的简单实现
- 智能指针的简单实现
- jstl fn的常见函数的总结
- ARM中的RO、RW和ZI DATA说明
- Triangle
- android ListView几个比较特别的属性
- session丢失
- 简单的计数智能指针实现
- 网络基础笔记——OSI七层模型
- Java加载图片 Image与BufferedImage 区别
- 文本框 textarea长度判断
- 解析AFNetWorking 网络框架(一)
- 黑马程序员_Java环境搭建
- YII 用AJAX上传图片
- lsof命令
- 使用bitblt函数加载位图,重绘时消失