亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? functor.h

?? 和modern c++ design 這本書配套的程序庫。可以從作者的網站上免費下載。
?? H
?? 第 1 頁 / 共 4 頁
字號:
        typedef typename TypeTraits<P9>::ParameterType Parm9;
        virtual R operator()(Parm1, Parm2, Parm3, Parm4, Parm5, Parm6, 
            Parm7, Parm8, Parm9) = 0;
    };

////////////////////////////////////////////////////////////////////////////////
// class template FunctorImpl
// Specialization for 10 parameters
////////////////////////////////////////////////////////////////////////////////

    template <typename R, typename P1, typename P2, typename P3, typename P4,
        typename P5, typename P6, typename P7, typename P8, typename P9,
        typename P10,
        template <class> class ThreadingModel>
    class FunctorImpl<R, TYPELIST_10(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10),
            ThreadingModel>
        : public Private::FunctorImplBase<R, ThreadingModel>
    {
    public:
        typedef R ResultType;
        typedef typename TypeTraits<P1>::ParameterType Parm1;
        typedef typename TypeTraits<P2>::ParameterType Parm2;
        typedef typename TypeTraits<P3>::ParameterType Parm3;
        typedef typename TypeTraits<P4>::ParameterType Parm4;
        typedef typename TypeTraits<P5>::ParameterType Parm5;
        typedef typename TypeTraits<P6>::ParameterType Parm6;
        typedef typename TypeTraits<P7>::ParameterType Parm7;
        typedef typename TypeTraits<P8>::ParameterType Parm8;
        typedef typename TypeTraits<P9>::ParameterType Parm9;
        typedef typename TypeTraits<P10>::ParameterType Parm10;
        virtual R operator()(Parm1, Parm2, Parm3, Parm4, Parm5, Parm6, 
            Parm7, Parm8, Parm9, Parm10) = 0;
    };

////////////////////////////////////////////////////////////////////////////////
// class template FunctorImpl
// Specialization for 11 parameters
////////////////////////////////////////////////////////////////////////////////

    template <typename R, typename P1, typename P2, typename P3, typename P4,
        typename P5, typename P6, typename P7, typename P8, typename P9,
        typename P10, typename P11,
        template <class> class ThreadingModel>
    class FunctorImpl<R,
            TYPELIST_11(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11),
            ThreadingModel>
        : public Private::FunctorImplBase<R, ThreadingModel>
    {
    public:
        typedef R ResultType;
        typedef typename TypeTraits<P1>::ParameterType Parm1;
        typedef typename TypeTraits<P2>::ParameterType Parm2;
        typedef typename TypeTraits<P3>::ParameterType Parm3;
        typedef typename TypeTraits<P4>::ParameterType Parm4;
        typedef typename TypeTraits<P5>::ParameterType Parm5;
        typedef typename TypeTraits<P6>::ParameterType Parm6;
        typedef typename TypeTraits<P7>::ParameterType Parm7;
        typedef typename TypeTraits<P8>::ParameterType Parm8;
        typedef typename TypeTraits<P9>::ParameterType Parm9;
        typedef typename TypeTraits<P10>::ParameterType Parm10;
        typedef typename TypeTraits<P11>::ParameterType Parm11;
        virtual R operator()(Parm1, Parm2, Parm3, Parm4, Parm5, Parm6, 
            Parm7, Parm8, Parm9, Parm10, Parm11) = 0;
    };

////////////////////////////////////////////////////////////////////////////////
// class template FunctorImpl
// Specialization for 12 parameters
////////////////////////////////////////////////////////////////////////////////

    template <typename R, typename P1, typename P2, typename P3, typename P4,
        typename P5, typename P6, typename P7, typename P8, typename P9,
        typename P10, typename P11, typename P12,
        template <class> class ThreadingModel>
    class FunctorImpl<R,
            TYPELIST_12(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12),
            ThreadingModel>
        : public Private::FunctorImplBase<R, ThreadingModel>
    {
    public:
        typedef R ResultType;
        typedef typename TypeTraits<P1>::ParameterType Parm1;
        typedef typename TypeTraits<P2>::ParameterType Parm2;
        typedef typename TypeTraits<P3>::ParameterType Parm3;
        typedef typename TypeTraits<P4>::ParameterType Parm4;
        typedef typename TypeTraits<P5>::ParameterType Parm5;
        typedef typename TypeTraits<P6>::ParameterType Parm6;
        typedef typename TypeTraits<P7>::ParameterType Parm7;
        typedef typename TypeTraits<P8>::ParameterType Parm8;
        typedef typename TypeTraits<P9>::ParameterType Parm9;
        typedef typename TypeTraits<P10>::ParameterType Parm10;
        typedef typename TypeTraits<P11>::ParameterType Parm11;
        typedef typename TypeTraits<P12>::ParameterType Parm12;
        virtual R operator()(Parm1, Parm2, Parm3, Parm4, Parm5, Parm6, 
            Parm7, Parm8, Parm9, Parm10, Parm11, Parm12) = 0;
    };

////////////////////////////////////////////////////////////////////////////////
// class template FunctorImpl
// Specialization for 13 parameters
////////////////////////////////////////////////////////////////////////////////

    template <typename R, typename P1, typename P2, typename P3, typename P4,
        typename P5, typename P6, typename P7, typename P8, typename P9,
        typename P10, typename P11, typename P12, typename P13,
        template <class> class ThreadingModel>
    class FunctorImpl<R,
            TYPELIST_13(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13),
            ThreadingModel>
        : public Private::FunctorImplBase<R, ThreadingModel>
    {
    public:
        typedef R ResultType;
        typedef typename TypeTraits<P1>::ParameterType Parm1;
        typedef typename TypeTraits<P2>::ParameterType Parm2;
        typedef typename TypeTraits<P3>::ParameterType Parm3;
        typedef typename TypeTraits<P4>::ParameterType Parm4;
        typedef typename TypeTraits<P5>::ParameterType Parm5;
        typedef typename TypeTraits<P6>::ParameterType Parm6;
        typedef typename TypeTraits<P7>::ParameterType Parm7;
        typedef typename TypeTraits<P8>::ParameterType Parm8;
        typedef typename TypeTraits<P9>::ParameterType Parm9;
        typedef typename TypeTraits<P10>::ParameterType Parm10;
        typedef typename TypeTraits<P11>::ParameterType Parm11;
        typedef typename TypeTraits<P12>::ParameterType Parm12;
        typedef typename TypeTraits<P13>::ParameterType Parm13;
        virtual R operator()(Parm1, Parm2, Parm3, Parm4, Parm5, Parm6, 
            Parm7, Parm8, Parm9, Parm10, Parm11, Parm12, Parm13) = 0;
    };

////////////////////////////////////////////////////////////////////////////////
// class template FunctorImpl
// Specialization for 14 parameters
////////////////////////////////////////////////////////////////////////////////

    template <typename R, typename P1, typename P2, typename P3, typename P4,
        typename P5, typename P6, typename P7, typename P8, typename P9,
        typename P10, typename P11, typename P12, typename P13, typename P14,
        template <class> class ThreadingModel>
    class FunctorImpl<R,
            TYPELIST_14(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13,
                P14),
            ThreadingModel>
        : public Private::FunctorImplBase<R, ThreadingModel>
    {
    public:
        typedef R ResultType;
        typedef typename TypeTraits<P1>::ParameterType Parm1;
        typedef typename TypeTraits<P2>::ParameterType Parm2;
        typedef typename TypeTraits<P3>::ParameterType Parm3;
        typedef typename TypeTraits<P4>::ParameterType Parm4;
        typedef typename TypeTraits<P5>::ParameterType Parm5;
        typedef typename TypeTraits<P6>::ParameterType Parm6;
        typedef typename TypeTraits<P7>::ParameterType Parm7;
        typedef typename TypeTraits<P8>::ParameterType Parm8;
        typedef typename TypeTraits<P9>::ParameterType Parm9;
        typedef typename TypeTraits<P10>::ParameterType Parm10;
        typedef typename TypeTraits<P11>::ParameterType Parm11;
        typedef typename TypeTraits<P12>::ParameterType Parm12;
        typedef typename TypeTraits<P13>::ParameterType Parm13;
        typedef typename TypeTraits<P14>::ParameterType Parm14;
        virtual R operator()(Parm1, Parm2, Parm3, Parm4, Parm5, Parm6, 
            Parm7, Parm8, Parm9, Parm10, Parm11, Parm12, Parm13, Parm14) = 0;
    };

////////////////////////////////////////////////////////////////////////////////
// class template FunctorImpl
// Specialization for 15 parameters
////////////////////////////////////////////////////////////////////////////////

    template <typename R, typename P1, typename P2, typename P3, typename P4,
        typename P5, typename P6, typename P7, typename P8, typename P9,
        typename P10, typename P11, typename P12, typename P13, typename P14,
        typename P15, template <class> class ThreadingModel>
    class FunctorImpl<R,
            TYPELIST_15(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13,
                P14, P15),
            ThreadingModel>
        : public Private::FunctorImplBase<R, ThreadingModel>
    {
    public:
        typedef R ResultType;
        typedef typename TypeTraits<P1>::ParameterType Parm1;
        typedef typename TypeTraits<P2>::ParameterType Parm2;
        typedef typename TypeTraits<P3>::ParameterType Parm3;
        typedef typename TypeTraits<P4>::ParameterType Parm4;
        typedef typename TypeTraits<P5>::ParameterType Parm5;
        typedef typename TypeTraits<P6>::ParameterType Parm6;
        typedef typename TypeTraits<P7>::ParameterType Parm7;
        typedef typename TypeTraits<P8>::ParameterType Parm8;
        typedef typename TypeTraits<P9>::ParameterType Parm9;
        typedef typename TypeTraits<P10>::ParameterType Parm10;
        typedef typename TypeTraits<P11>::ParameterType Parm11;
        typedef typename TypeTraits<P12>::ParameterType Parm12;
        typedef typename TypeTraits<P13>::ParameterType Parm13;
        typedef typename TypeTraits<P14>::ParameterType Parm14;
        typedef typename TypeTraits<P15>::ParameterType Parm15;
        virtual R operator()(Parm1, Parm2, Parm3, Parm4, Parm5, Parm6, 
            Parm7, Parm8, Parm9, Parm10, Parm11, Parm12, Parm13, Parm14,
            Parm15) = 0;
    };

////////////////////////////////////////////////////////////////////////////////
// class template FunctorHandler
// Wraps functors and pointers to functions
////////////////////////////////////////////////////////////////////////////////

    template <class ParentFunctor, typename Fun>
    class FunctorHandler
        : public ParentFunctor::Impl
    {
        typedef typename ParentFunctor::Impl Base;

    public:
        typedef typename Base::ResultType ResultType;
        typedef typename Base::Parm1 Parm1;
        typedef typename Base::Parm2 Parm2;
        typedef typename Base::Parm3 Parm3;
        typedef typename Base::Parm4 Parm4;
        typedef typename Base::Parm5 Parm5;
        typedef typename Base::Parm6 Parm6;
        typedef typename Base::Parm7 Parm7;
        typedef typename Base::Parm8 Parm8;
        typedef typename Base::Parm9 Parm9;
        typedef typename Base::Parm10 Parm10;
        typedef typename Base::Parm11 Parm11;
        typedef typename Base::Parm12 Parm12;
        typedef typename Base::Parm13 Parm13;
        typedef typename Base::Parm14 Parm14;
        typedef typename Base::Parm15 Parm15;
        
        FunctorHandler(const Fun& fun) : f_(fun) {}
        
        DEFINE_CLONE_FUNCTORIMPL(FunctorHandler)

        // operator() implementations for up to 15 arguments
                
        ResultType operator()()
        { return f_(); }

        ResultType operator()(Parm1 p1)
        { return f_(p1); }
        
        ResultType operator()(Parm1 p1, Parm2 p2)
        { return f_(p1, p2); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3)
        { return f_(p1, p2, p3); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4)
        { return f_(p1, p2, p3, p4); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5)
        { return f_(p1, p2, p3, p4, p5); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5,
            Parm6 p6)
        { return f_(p1, p2, p3, p4, p5, p6); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5,
            Parm6 p6, Parm7 p7)
        { return f_(p1, p2, p3, p4, p5, p6, p7); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5,
            Parm6 p6, Parm7 p7, Parm8 p8)
        { return f_(p1, p2, p3, p4, p5, p6, p7, p8); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5,
            Parm6 p6, Parm7 p7, Parm8 p8, Parm9 p9)
        { return f_(p1, p2, p3, p4, p5, p6, p7, p8, p9); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5,
            Parm6 p6, Parm7 p7, Parm8 p8, Parm9 p9, Parm10 p10)
        { return f_(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5,
            Parm6 p6, Parm7 p7, Parm8 p8, Parm9 p9, Parm10 p10, Parm11 p11)
        { return f_(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5,
            Parm6 p6, Parm7 p7, Parm8 p8, Parm9 p9, Parm10 p10, Parm11 p11,
            Parm12 p12)
        { return f_(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12); }
        
        ResultType operator()(Parm1 p1, Parm2 p2, Parm3 p3, Parm4 p4, Parm5 p5,
            Parm6 p6, Parm7 p7, Parm8 p8, Parm9 p9, Parm10 p10, Parm11 p11,
            Parm12 p12, Parm13 p13)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产一区在线观看| 国产精品理论在线观看| 国产精品影音先锋| 亚洲va欧美va人人爽午夜| 92国产精品观看| 人禽交欧美网站| 自拍偷在线精品自拍偷无码专区| 欧美一区二区三区视频免费播放| 成人免费毛片高清视频| 免费观看久久久4p| 夜夜精品浪潮av一区二区三区| 久久综合九色综合久久久精品综合| 一本大道av伊人久久综合| 国产尤物一区二区在线| 午夜精品久久久久久久99水蜜桃| 欧美激情一区二区| 日韩免费看网站| 欧美性大战久久久| 成人禁用看黄a在线| 激情综合网激情| 视频一区视频二区在线观看| 亚洲欧洲av在线| 午夜视频在线观看一区| 日韩毛片精品高清免费| 久久精品日韩一区二区三区| 日韩视频一区二区三区| 在线观看亚洲一区| 色中色一区二区| av电影天堂一区二区在线观看| 国产在线看一区| 麻豆精品一二三| 日韩高清欧美激情| 亚洲成人动漫一区| 亚洲一区二区五区| 亚洲天堂精品视频| 亚洲欧洲成人精品av97| 国产精品久99| 中文字幕五月欧美| 中文字幕一区二区三区色视频| 精品久久久久久久久久久久包黑料 | 亚瑟在线精品视频| 一区二区三区日韩精品视频| 亚洲丝袜制服诱惑| 亚洲精品自拍动漫在线| 国产成人啪免费观看软件| 九色|91porny| 免费精品视频在线| 精品系列免费在线观看| 九一九一国产精品| 国产综合色在线视频区| 国产精品一区二区在线看| 国产综合色视频| 国产精品一区二区在线观看网站| 国产精品影音先锋| caoporen国产精品视频| 色中色一区二区| 欧美午夜寂寞影院| 在线播放欧美女士性生活| 91麻豆精品国产91久久久久久久久| 8x8x8国产精品| 欧美大胆人体bbbb| 久久精品一区二区三区四区| 欧美韩国一区二区| 亚洲精品视频在线| 亚洲成人激情av| 精品一区二区三区影院在线午夜 | 色婷婷狠狠综合| 色综合天天综合在线视频| 91成人免费网站| 欧美日韩精品免费观看视频| 91精品国产一区二区三区| 日韩精品一区在线| 国产精品美女久久久久久久久久久| 亚洲欧洲精品一区二区精品久久久 | 精品国产污网站| 国产肉丝袜一区二区| 亚洲欧美激情小说另类| 天天综合色天天| 国产精品自拍av| 色94色欧美sute亚洲线路一ni| 欧美精品xxxxbbbb| 久久久久88色偷偷免费| 亚洲欧美日本韩国| 日本欧美肥老太交大片| 69精品人人人人| 日韩视频一区二区三区在线播放| 国产一区二区精品久久| 久久久亚洲精品石原莉奈| 国产精品福利一区二区三区| 亚洲国产精品久久艾草纯爱| 人妖欧美一区二区| 91在线视频免费观看| 日韩欧美一二区| 亚洲欧美色综合| 久久精品国产一区二区三| 成人app在线观看| 91麻豆精品国产| 中文字幕巨乱亚洲| 欧美三级蜜桃2在线观看| 欧美电影免费观看高清完整版在线 | 亚洲欧洲99久久| 男女男精品视频| 91视频免费看| 久久色.com| 亚洲成人在线观看视频| 成人aa视频在线观看| 日韩欧美色综合| 亚洲一区二区精品视频| 国产成人免费视频一区| 91精品国产福利在线观看| 综合激情成人伊人| 国产一区二区三区国产| 91精品中文字幕一区二区三区| 国产精品久久久久久久久免费桃花 | 99国产麻豆精品| 久久婷婷色综合| 免费日本视频一区| 欧美日韩另类国产亚洲欧美一级| 国产欧美日韩久久| 久草精品在线观看| 91精品国产综合久久福利| 精品日韩一区二区| 一级中文字幕一区二区| 成人在线综合网| 国产视频不卡一区| 在线成人小视频| 五月综合激情婷婷六月色窝| 色哟哟精品一区| 亚洲欧美在线视频| eeuss鲁片一区二区三区| 国产欧美日韩中文久久| 国产精品小仙女| 久久久精品tv| 国产乱人伦精品一区二区在线观看| 日韩美女天天操| 国模冰冰炮一区二区| 日韩三级视频在线观看| 全国精品久久少妇| 日韩午夜精品电影| 捆绑变态av一区二区三区| 日韩欧美国产一区二区在线播放| 日本不卡视频在线观看| 欧美群妇大交群中文字幕| 亚洲成人先锋电影| 欧美在线观看视频一区二区| 国产精品初高中害羞小美女文| 波多野结衣在线一区| 欧美激情在线观看视频免费| 国产一区欧美日韩| 99综合影院在线| 欧美国产精品久久| 欧美日产国产精品| 色呦呦日韩精品| 国产精品自在欧美一区| 日韩欧美第一区| 男人操女人的视频在线观看欧美| 欧美日韩成人综合在线一区二区| 亚洲综合一二三区| 成人午夜电影小说| 久久久99精品久久| 韩国理伦片一区二区三区在线播放| 日本道精品一区二区三区| 亚洲色图视频网| 色狠狠色狠狠综合| 亚洲午夜私人影院| 欧美精三区欧美精三区| 亚洲va中文字幕| 日韩一区二区在线看| 毛片不卡一区二区| 欧美精品一区二区三区四区| 不卡一区二区在线| 亚洲人成电影网站色mp4| 色综合久久中文字幕综合网| 一区二区三区在线视频观看| 日韩午夜在线播放| 国产麻豆日韩欧美久久| 亚洲国产精品黑人久久久| 91亚洲永久精品| 久久爱www久久做| 国产欧美日韩亚州综合| 97久久精品人人爽人人爽蜜臀| 亚洲激情校园春色| 日韩欧美国产一二三区| 国产成人精品影院| 亚洲免费在线播放| 欧美高清www午色夜在线视频| 国产美女一区二区三区| 国产精品夫妻自拍| 欧美日韩精品专区| 国产福利一区二区三区视频在线 | 午夜欧美大尺度福利影院在线看| 日日夜夜精品视频天天综合网| 一本色道亚洲精品aⅴ| 青草国产精品久久久久久| 精品少妇一区二区| 91麻豆成人久久精品二区三区| 亚洲成av人片一区二区三区| 2020国产精品自拍| 91国产视频在线观看| 亚洲第一搞黄网站|