最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++模板類的用法

 更新時間:2014年10月21日 10:21:20   投稿:shichen2014  
這篇文章主要介紹了C++模板類的用法,實例講述了模板類的概念及相關(guān)用法,需要的朋友可以參考下

本文實例講述了C++模板類的用法,分享給大家供大家參考。具體實現(xiàn)方法如下:

main.h頭文件如下:

復制代碼 代碼如下:
template <class T> 
class actioncontainer 

public: 
    //構(gòu)造函數(shù) 
    actioncontainer() 
    { 
        m_nRedoPos = 0; 
        m_nUndoPos = 0; 
    } 
    //容器的接口函數(shù) 
    void add(T value); 
    T redo(); 
    T undo(); 
    //容器的屬性 
private: 
    int m_nRedoPos; 
    int m_nUndoPos; 
    const static int ACTION_SIZE=5; 
 
    T m_RedoAction[ACTION_SIZE]; 
    T m_UndoAction[ACTION_SIZE]; 
}; 
 
template<class T> 
void actioncontainer<T>::add(T value) 

    if (m_nUndoPos >= ACTION_SIZE) 
    { 
        //如果容器已潢,剛調(diào)整添加位置 
        m_nUndoPos = ACTION_SIZE - 1; 
        for(int i = 0; i < ACTION_SIZE; i++) 
        { 
            m_UndoAction[i] = m_UndoAction[i+1]; 
        } 
    } 
    m_UndoAction[m_nUndoPos++] = value; 

 
template<class T> 
T actioncontainer<T>::redo() 

    //將恢復動作復制到撤銷數(shù)組中 
    m_UndoAction[m_nUndoPos++] = m_RedoAction[--m_nRedoPos]; 
 
    //返回恢復的動作 
    return m_RedoAction[m_nRedoPos]; 

 
template<class T> 
T actioncontainer<T>::undo() 

    m_RedoAction[m_nRedoPos++] = m_UndoAction[--m_nUndoPos]; 
 
    return m_UndoAction[m_nUndoPos]; 
}

main.cpp源文件如下:

復制代碼 代碼如下:
// test_iostream.cpp : 定義控制臺應用程序的入口點。 
// 
#include "StdAfx.h" 
#include "main.h" 
using namespace std; 
 
int _tmain(int argc, _TCHAR* argv[]) 

    actioncontainer<int> intaction; 
 
    //向容器中加動作 
    intaction.add(1); 
    intaction.add(2); 
    intaction.add(3); 
    intaction.add(4); 
 
    //撤銷上一步動作 
    int nUndo = intaction.undo(); 
    nUndo = intaction.undo(); 
 
    //恢復 
    int nRedo = intaction.redo(); 
    return 0; 
}

希望本文所述對大家的C++程序設計有所幫助。

相關(guān)文章

  • C++實現(xiàn)LeetCode(38.計數(shù)和讀法)

    C++實現(xiàn)LeetCode(38.計數(shù)和讀法)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(38.計數(shù)和讀法),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • 基于Matlab制作偽3D第一視角迷宮小游戲

    基于Matlab制作偽3D第一視角迷宮小游戲

    這篇文章主要為大家詳細介紹了如何利用Matlab語言制作偽3D第一視角迷宮小游戲,文中的示例代碼講解詳細,感興趣的小伙伴可以動手嘗試一下
    2022-07-07
  • c++與c中的數(shù)組初始化默認值如何為0

    c++與c中的數(shù)組初始化默認值如何為0

    這篇文章主要介紹了c++與c中的數(shù)組初始化默認值如何為0問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • C++設計模式之外觀模式(Facade)

    C++設計模式之外觀模式(Facade)

    這篇文章主要為大家詳細介紹了C++設計模式之外觀模式(Facade),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • C++實現(xiàn)景區(qū)旅游信息管理系統(tǒng)

    C++實現(xiàn)景區(qū)旅游信息管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C++實現(xiàn)景區(qū)旅游信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • C語言實現(xiàn)簡單的掃雷功能

    C語言實現(xiàn)簡單的掃雷功能

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)簡單的掃雷功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 基于VS+Opencv2.4.10微信跳一跳輔助工具

    基于VS+Opencv2.4.10微信跳一跳輔助工具

    這篇文章主要為大家詳細介紹了基于VS+Opencv2.4.10微信跳一跳輔助工具,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • 基于Qt實現(xiàn)自定義時間選擇控件

    基于Qt實現(xiàn)自定義時間選擇控件

    這篇文章主要為大家詳細介紹了如何基于Qt實現(xiàn)自定義時間選擇控件,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-12-12
  • 如何給隨機數(shù)加密

    如何給隨機數(shù)加密

    隨機數(shù)加密的簡單算法,需要的朋友可以參考一下
    2013-03-03
  • OpenCV實現(xiàn)相機標定示例詳解

    OpenCV實現(xiàn)相機標定示例詳解

    相機標定是圖像處理的基礎,現(xiàn)在市面上買到的相機,都存在著或多或少的畸變。本文將介紹如何利用一系列棋盤照片進行攝像機標定的,感興趣的小伙伴可以關(guān)注一下
    2021-11-11

最新評論

土默特左旗| 淳化县| 周至县| 长寿区| 许昌县| 虹口区| 荥阳市| 庆城县| 衡阳县| 辽中县| 突泉县| 建昌县| 太原市| 平武县| 沂源县| 安西县| 万安县| 金堂县| 墨玉县| 克什克腾旗| 韶山市| 桐城市| 梁平县| 桐乡市| 温州市| 招远市| 姜堰市| 遂宁市| 汉川市| 汉沽区| 延庆县| 龙南县| 昌乐县| 尼玛县| 蓬莱市| 灵丘县| 铅山县| 芮城县| 华宁县| 双辽市| 丹寨县|