• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            模版套模版

            1 模版類中有成員是模版:
            #include <iostream>
            #include
            <typeinfo>
            using namespace std;

            template
            <class T>
            class Outer
            {
            public:
              template
            <class R>
             
            class Inner
             
            {
             
            public:
               
            void f();
              }
            ;
            }
            ;

            template
            <class T> 
            template
            <class R>
            void Outer<T>::Inner<R>::f()
            {
              cout
            << "Outer == " << typeid(T).name() << endl;
              cout
            << "Inner == " << typeid(R).name() << endl;
              cout
            << "Full Inner == " << typeid(*this).name() << endl;
            }


            int main()
            {
              Outer
            <int>::Inner<bool> inner;
              inner.f();
            }
             ///:~

            //output:
            //Outer == int
            //Inner == bool
            //Full Inner == class Outer<int>::Inner<bool>
            //Press any key to continue . . .

            2 模版類的參數(shù)是模版:
            // A print function for standard C++ sequences
            #include <iostream>
            #include
            <list>
            #include
            <memory>
            #include
            <vector>
            #include
            <deque>
            using namespace std;

            template
            <class T, template<class U, class = allocator<U> >
                             
            class Seq>
            void printSeq(Seq<T>& seq)
            {
             
            for (typename Seq<T>::iterator b = seq.begin();
                   b
            != seq.end();)
                cout
            << *b++ << endl;
            }


            int main()
            {
             
            // Process a vector
              vector<int> v;
              v.push_back(
            1);
              v.push_back(
            2);
              printSeq(v);
             
            // Process a list
              list<int> lst;
              lst.push_back(
            3);
              lst.push_back(
            4);
              printSeq(lst);

             
            // Process a deque
              deque<int> d;
              d.push_back(
            5);
              d.push_back(
            6);
              printSeq(d);
            }
             ///:~

            注意:typename 通知編譯器被限定的標(biāo)識符應(yīng)該為類型,不同與typedef 是定義新的類型。

            posted on 2008-09-14 18:13 肥仔 閱讀(450) 評論(1)  編輯 收藏 引用 所屬分類: C++ 模板

            評論

            # re: 模版套模版[未登錄]  回復(fù)  更多評論   

            我的怎么不能通過

            E:\MAIN work\thinking in c++\TICPP-2nd-ed-Vol-two\code\C05\MemberClass.cpp(19) : error C2059: syntax error : ''template<''
            E:\MAIN work\thinking in c++\TICPP-2nd-ed-Vol-two\code\C05\MemberClass.cpp(19) : error C2065: 'R' : undeclared identifier
            E:\MAIN work\thinking in c++\TICPP-2nd-ed-Vol-two\code\C05\MemberClass.cpp(25) : error C2143: syntax error : missing ';' before '{'
            E:\MAIN work\thinking in c++\TICPP-2nd-ed-Vol-two\code\C05\MemberClass.cpp(25) : error C2447: missing function header (old-style formal list?)
            2012-01-02 23:13 | 小杰
            天堂久久天堂AV色综合| 精品蜜臀久久久久99网站| 久久国产精品-久久精品| 精品久久久久久久久午夜福利| 久久久久久久久久久久中文字幕 | 伊人久久综在合线亚洲2019| 久久精品国产亚洲AV无码麻豆 | 久久免费国产精品| 伊人久久成人成综合网222| 久久精品国产99久久久古代| 久久久久亚洲av无码专区导航| 久久精品人成免费| 国产无套内射久久久国产| 欧美亚洲国产精品久久久久| 久久久久人妻精品一区| 国产福利电影一区二区三区,免费久久久久久久精 | 国产精品伊人久久伊人电影| 久久久久久一区国产精品| 中文字幕久久波多野结衣av| 久久九九精品99国产精品| 久久国产精品二国产精品| 日韩人妻无码精品久久久不卡| 亚洲国产精品婷婷久久| 狠狠色综合网站久久久久久久高清| 精品无码久久久久国产| 亚洲另类欧美综合久久图片区| 国产一级持黄大片99久久| 四虎影视久久久免费观看| 国内精品久久人妻互换| 一本久久免费视频| 亚洲乱亚洲乱淫久久| 无码超乳爆乳中文字幕久久| 久久久久无码精品| 91久久福利国产成人精品| 亚洲精品乱码久久久久久久久久久久| 久久无码av三级| 久久不射电影网| 久久久久久久亚洲Av无码| 一本一道久久综合狠狠老| 久久久噜噜噜久久中文字幕色伊伊| 国产精品成人久久久久久久|