• <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

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

            模版套模版

            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 模版類的參數是模版:
            // 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 通知編譯器被限定的標識符應該為類型,不同與typedef 是定義新的類型。

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

            評論

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

            我的怎么不能通過

            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 | 小杰
            免费观看久久精彩视频| 99麻豆久久久国产精品免费| 久久91精品国产91| 久久久久久久97| 99久久亚洲综合精品网站| 青青久久精品国产免费看| 亚洲精品乱码久久久久久按摩| 国产精品久久久久久福利69堂| 亚洲精品美女久久久久99小说| 青草国产精品久久久久久| 999久久久国产精品| 日本久久久久亚洲中字幕 | 国产69精品久久久久APP下载| 久久精品卫校国产小美女| 国产精品无码久久四虎| 久久久一本精品99久久精品88| 久久99精品九九九久久婷婷| 久久香蕉国产线看观看精品yw| 久久99精品久久久久久齐齐| 久久久av波多野一区二区| 久久久www免费人成精品| 国产精品狼人久久久久影院| 狠狠色丁香婷婷综合久久来| 狠狠综合久久AV一区二区三区| 欧美精品一区二区久久| segui久久国产精品| 91麻精品国产91久久久久| 久久久久综合网久久| 久久精品国产精品青草| 国内精品久久久久伊人av| 久久精品亚洲中文字幕无码麻豆| 久久人人添人人爽添人人片牛牛 | 久久精品这里只有精99品| 久久久久中文字幕| 日韩精品国产自在久久现线拍| 69久久夜色精品国产69| 久久青草国产手机看片福利盒子| 久久91精品国产91久久麻豆| 国产成人精品久久免费动漫| 久久99精品国产麻豆宅宅| 国产亚洲成人久久|