C++的一个简单的句柄类模板
2014-07-23 01:21
302 查看
#ifndef HANDLE_H #define HANDLE_H #include "Animal.h" template <typename T> class Handle{ public: Handle(T *ptr); Handle(const Handle &other); Handle &operator = (const Handle &other); ~Handle(); T *operator->(); private: T *ptr_; }; template <typename T> inline Handle<T>::Handle(T *ptr) :ptr_(ptr->copy()) {} template <typename T> inline Handle<T>::Handle(const Handle &other) :ptr_(other.ptr_->copy()) {} template <typename T> inline Handle<T> &Handle<T>::operator = (const Handle &other) { if(this != &other){ delete ptr_; ptr_ = other.ptr_->copy(); } return *this; } template <typename T> inline Handle<T>::~Handle() { delete ptr_; } template <typename T> inline T *Handle<T>::operator -> () { return ptr_; } #endif /*HANDLE_H*/
相关文章推荐
- 一个泛型句柄类--C++模板和泛型编程--c++ primer
- 一个简单的c++模板开发实例
- C++一个简单的手柄类模板
- C++反汇编揭秘1 – 一个简单C++程序反汇编解析 (Rev. 3)
- 默默简单的写了一个模板引擎
- C++作业:一个简单的矩阵类
- 一个最简单的com组件的例子(C++)
- dotNet中ArrayList的C++模板简单实现
- 设计模式---单件(C++版) 一个简单实例(避免用户忘记delete单件实例)
- 一个简单封装用户命令的C++程序
- C++反汇编揭秘1 – 一个简单C++程序反汇编解析 (Rev. 3)
- C++反汇编揭秘1 一个简单的C++程序反汇编解析
- C++ Boost 之Python(一个简单的例子)
- 一个简单的C++程序反汇编解析
- 解答: 一个简单的c++程序
- 一个简单C++的调试代码
- 一个高效的C++性能计数器模板
- 一个简单的wince.net流驱动模板
- Linux下,使用C/C++编写的一个简单的信号处理例程
- OpenCms JSP 模板开发——创建一个简单的JSP模板