• <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)貼],因其丑陋,見(jiàn)諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 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)識(shí)符應(yīng)該為類型,不同與typedef 是定義新的類型。

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

            評(píng)論

            # re: 模版套模版[未登錄](méi)  回復(fù)  更多評(píng)論   

            我的怎么不能通過(guò)

            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 | 小杰
            亚洲中文字幕无码久久综合网| 999久久久免费国产精品播放| 中文字幕精品久久| 国内精品伊人久久久影院| 国产精品美女久久久久| 无夜精品久久久久久| 国产亚洲成人久久| 色综合久久天天综合| 色狠狠久久AV五月综合| 日韩亚洲国产综合久久久| 品成人欧美大片久久国产欧美| 久久亚洲美女精品国产精品| 少妇被又大又粗又爽毛片久久黑人 | AV无码久久久久不卡蜜桃| 久久精品国产亚洲av影院| 久久亚洲国产精品五月天婷| 97久久精品人人做人人爽| 7777精品伊人久久久大香线蕉| 久久精品成人免费观看97| 精品久久久久久久| 久久精品一区二区| 亚洲国产精品无码久久久蜜芽 | 国产成人精品久久一区二区三区| 久久精品国产99久久香蕉| 99久久精品午夜一区二区| 国内精品久久久久影院老司| 人人狠狠综合久久亚洲婷婷| 日本强好片久久久久久AAA| 无码任你躁久久久久久老妇| 国内精品久久久久久久久电影网| 国产高潮国产高潮久久久| 99蜜桃臀久久久欧美精品网站| 久久av免费天堂小草播放| 中文精品久久久久国产网址| 精品久久久久久亚洲| 久久精品人人槡人妻人人玩AV| 婷婷国产天堂久久综合五月| 婷婷久久综合| 免费精品久久天干天干| 久久精品国产亚洲AV香蕉| 久久精品青青草原伊人|