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

            The Fourth Dimension Space

            枯葉北風寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢令

            C++ 泛型編程練習 Adaptor Functor & Helper Function

            #include<iostream>
            using namespace std;

            template <class OutputIterator, class Iterator, class predicate>
                void copy(OutputIterator o, Iterator f, Iterator l, predicate p)
                {
                    while(f!=l)
                    {
                        if(p(*f))
                        {
                            *o = *f;
                            ++f;
                            ++o;
                        }
                        else
                        {
                            ++f;
                        }
                    }

                }
            template <class Predicate>
            class negate
            {
                Predicate p;
            public :
                typedef typename Predicate::value_type value_type;
                negate(const Predicate &pred):p(pred){}
                bool operator()(const value_type v)const
                {
                    return !p(v);
                }
            };

            template<class Number>
            struct smallerThanX
            {
                typedef Number value_type;
                int x;
                smallerThanX(int x):x(x)
                {

                }

                bool operator()(const Number& n) const
                {
                    return n< this->x;
                }
            };

            template <class Predicate>
            inline negate<Predicate > NOT (const Predicate &p)
            {
                return negate<Predicate>(p);
            }


            int main()
            {
                int a[] = {1,2,3,4,5,6,7,8};
                int *b = new int [10]; 
                copy(b,a,a+8,NOT(smallerThanX<int>(5)));
                return 0;
            }

            這種方式實在是有點難看啊。。。 代碼不仔細看還看不懂,不知道為什么要這樣寫呢。。。

            posted on 2014-09-29 23:50 abilitytao 閱讀(518) 評論(0)  編輯 收藏 引用

            久久精品国产亚洲一区二区三区| 久久青青国产| 久久国产热精品波多野结衣AV| 久久精品无码午夜福利理论片| 久久国产精品久久| 无码国内精品久久综合88 | 精品熟女少妇av免费久久| 免费国产99久久久香蕉| 思思久久99热只有频精品66| 青青青伊人色综合久久| 成人午夜精品无码区久久| 国产精品亚洲美女久久久| 久久国产精品无码一区二区三区 | 99久久国产热无码精品免费| 欧美国产精品久久高清| 久久99国产精品久久| 无码国内精品久久人妻蜜桃 | 久久中文骚妇内射| 人妻少妇精品久久| 久久精品这里只有精99品| 久久国产精品一国产精品金尊| 日产精品久久久久久久| 日本精品久久久久久久久免费| 国产午夜精品理论片久久| 久久免费视频网站| 久久96国产精品久久久| 狠狠干狠狠久久| 国产精品福利一区二区久久| 精品久久久噜噜噜久久久| 色88久久久久高潮综合影院| 亚洲国产精品无码久久一区二区| 7777精品伊人久久久大香线蕉| 香蕉aa三级久久毛片| 伊人精品久久久久7777| 久久久久久久久久久精品尤物| 国产精品久久久久蜜芽| av色综合久久天堂av色综合在 | 久久免费99精品国产自在现线 | 97久久国产亚洲精品超碰热| 久久精品无码一区二区无码| 国产精品久久久久久久|