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

C++模板類的用法

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

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

main.h頭文件如下:

復(fù)制代碼 代碼如下:
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() 

    //將恢復(fù)動(dòng)作復(fù)制到撤銷數(shù)組中 
    m_UndoAction[m_nUndoPos++] = m_RedoAction[--m_nRedoPos]; 
 
    //返回恢復(fù)的動(dòng)作 
    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源文件如下:

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

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

希望本文所述對(duì)大家的C++程序設(shè)計(jì)有所幫助。

相關(guān)文章

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

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

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

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

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

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

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

    C++設(shè)計(jì)模式之外觀模式(Facade)

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

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

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

    C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單的掃雷功能

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

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

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

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

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

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

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

    OpenCV實(shí)現(xiàn)相機(jī)標(biāo)定示例詳解

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

最新評(píng)論

芦山县| 博罗县| 鹿泉市| 威海市| 林州市| 郓城县| 苍南县| 古浪县| 西华县| 望都县| 平阴县| 理塘县| 宜君县| 南陵县| 罗源县| 延川县| 徐汇区| 德清县| 康乐县| 石城县| 乐平市| 简阳市| 宜良县| 夏邑县| 任丘市| 图们市| 广宁县| 杭州市| 深州市| 泸西县| 将乐县| 吉木萨尔县| 昭平县| 金门县| 罗平县| 新乐市| 高青县| 清涧县| 收藏| 琼海市| 黄冈市|