C++的一個簡單的控制程式碼類别範本
#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++
- C++ 單例類别範本(詳解)C++單例
- 類别範本 單例模板單例
- 類别範本
- 隱藏在 SDK 中的單例類别範本單例
- c++函式模板和類别範本C++函式
- 【C++】 59_類别範本深度剖析C++
- 類别範本的常見用法
- C++知識點57——類别範本(2、類别範本的區域性特化與預設模板實參)C++
- 【C++】 61_智慧指標類别範本C++指標
- 陣列類别範本陣列
- 類别範本的簡單應用(用於儲存不同型別資料的類容器)型別
- 類别範本與繼承繼承
- 類别範本與友元
- C++ Templates (2.1 類别範本Stack的實現 Implementation of Class Template Stack)C++
- 【C++ 泛型程式設計01:模板】函式模板與類别範本C++泛型程式設計函式
- pua 八股類别範本
- C++ Templates (2.2 使用Stack類别範本 Use of Class Template Stack )C++
- 類别範本與函式模板的區別函式
- C++ Templates (2.3 類别範本的區域性使用 Partial Usage of Class Templates)C++
- C++學習筆記 第59課類别範本深度刨析C++筆記
- 封裝不同類别範本的隨機數生成器封裝隨機
- 類别範本中成員函式建立時機函式
- 類别範本及其成員函式的定義及注意事項函式
- c++11-17 模板核心知識(二)—— 類别範本C++
- 資料結構初階--單連結串列(講解+類别範本實現)資料結構
- 【演算法學習】數學專題 有理數類别範本演算法
- 程式碼來構建一個簡單的compilerCompile
- 寫一個簡單的程式碼生成器
- 寫一個簡單的 Linux Shell (C++)LinuxC++
- C++寫一個簡單的JSON解析C++JSON
- 一個簡單的區塊鏈程式碼實現區塊鏈
- 建立一個簡單的小程式
- 類别範本物件做函式引數物件函式
- VS2017 設定 類别範本引數推導(CTAD, Class Template Argument Deduction)
- 資料結構初階--棧和佇列(講解+類别範本實現)資料結構佇列
- 程式碼改變世界 | 如何封裝一個簡單的 Koa封裝
- Go的第一個Hello程式 簡簡單單 - 快快樂樂Go
- Python,寫一個簡單的屬於自己的『BaseEnum』類Python