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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? boundmemberfunction.hpp

?? 一個(gè)實(shí)現(xiàn)C++反射機(jī)制的類庫(kù)
?? HPP
字號(hào):



/******************************************************************************\
*                                                                              *
*   BoundMemberFunction.hpp                                                    *
*                                                                              *
*   <Purpose of this file>                                                     *
*                                                                              *
\******************************************************************************/

// $Id: BoundMemberFunction.hpp,v 1.1 2007/10/25 14:05:23 tdevadit Exp $



#ifndef REFLCPP_BOUND_MEMBER_FUNCTION_HPP
#define REFLCPP_BOUND_MEMBER_FUNCTION_HPP



#include <reflcpp/PtrHolder.hpp>
#include <reflcpp/RetValHolder.hpp>
#include <reflcpp/Traits.hpp>
#include <reflcpp/Arguments.hpp>


/*------------------------------------------------------------------------------

    Forwards (global)                                                         */



namespace reflcpp {



/*-----------------------------------------------------------------------------\
|------------------------------------------------------------------------------|
|                                                                              |
|   BoundMemberFunction_body                                                   |
|                                                                              |
|------------------------------------------------------------------------------|
\------------------------------------------------------------------------------/

    <Class comments>

-                                                                             */

class BoundMemberFunction_body {

    /*--------------------------------------------------------------------------

        Constructors, Initters, Assignments, and Destructors                  */

    public:
            
        BoundMemberFunction_body() {}

    private:
	    
        // Disallow these unless specifically allowed.
        BoundMemberFunction_body(const BoundMemberFunction_body &);
        BoundMemberFunction_body &operator=(const BoundMemberFunction_body &);

    /*--------------------------------------------------------------------------

        Methods                                                               */

    public:
        virtual const std::vector<const Type *> &getArguments() const = 0;

        /* Invoke methods */
        // No arguments
		template <typename Ret_TP>
		Ret_TP invoke() const {
            Arguments args;
            return invoke_helper<Ret_TP>(0, args);
        }
		// 1 argument
        template <typename Ret_TP, typename Arg1_TP>
        Ret_TP invoke(Arg1_TP &arg1) const {
            Arguments args;
            args.addRefArgument(arg1);
            return invoke_helper<Ret_TP>(1, args);
        }
		// 2 arguments
        template <typename Ret_TP, typename Arg1_TP, typename Arg2_TP>
        Ret_TP invoke(Arg1_TP &arg1, Arg2_TP &arg2) const {
            Arguments args;
            args.addRefArgument(arg1);
            args.addRefArgument(arg2);
            return invoke_helper<Ret_TP>(2, args);
        }

        template <typename Ret_TP>
        Ret_TP invoke_helper(const int n, Arguments &args) const {
            RetValHolder_tmpl<Ret_TP> rv;
            this->invoke1(rv, n, args);
            return rv.val();
        }

        virtual void invoke1(RetValHolder &rvh, const int n, Arguments &args) const = 0;
};


/*-----------------------------------------------------------------------------\
|------------------------------------------------------------------------------|
|                                                                              |
|   BoundMemberFunction                                                        |
|                                                                              |
|------------------------------------------------------------------------------|
\------------------------------------------------------------------------------/

    <Class comments>

-                                                                             */

class BoundMemberFunction {

    /*--------------------------------------------------------------------------

        Constructors, Initters, Assignments, and Destructors                  */

    public:

        explicit BoundMemberFunction(const BoundMemberFunction_body *b) : m_body(b) {}

	private:
	    
	    // Currently, implicit for these is okay.
	    // BoundMemberFunction(const BoundMemberFunction &);
	    // BoundMemberFunction &operator=(const BoundMemberFunction &);

    /*--------------------------------------------------------------------------

        Methods                                                               */

    public:
        
        const std::vector<const Type *> &getArguments() const { return m_body->getArguments(); }

        template <typename Ret_TP>
        Ret_TP rmiInvoke(Arguments &args) const { 
            return m_body->template invoke_helper<Ret_TP>((const int)args.size(), args);
        }

        template <typename Ret_TP>
        Ret_TP invoke() const {
			return m_body->invoke<Ret_TP>();
        }
        template <typename Ret_TP, typename Arg1_TP>
        Ret_TP invoke(Arg1_TP &arg1) const { 
			return m_body->invoke<Ret_TP>(
                const_cast<typename TypeOp<Arg1_TP>::BareT &>(arg1)
            );
        }
        template <typename Ret_TP, typename Arg1_TP, typename Arg2_TP>
        Ret_TP invoke(Arg1_TP &arg1, Arg2_TP &arg2) const { 
			return m_body->invoke<Ret_TP>(
                const_cast<typename TypeOp<Arg1_TP>::BareT &>(arg1), 
                const_cast<typename TypeOp<Arg2_TP>::BareT &>(arg2)
            );
        }

 
    /*--------------------------------------------------------------------------

        Data                                                                  */

    private:

        const BoundMemberFunction_body *m_body;
};


static const char BoundMemberFunction_hpp_id[] =
"$Id: BoundMemberFunction.hpp,v 1.1 2007/10/25 14:05:23 tdevadit Exp $";



} // namespace

#endif



/* Local Variables: */
/* c-basic-offset: 4 */
/* End: */
/* vim: set filetype=cpp tabstop=8 shiftwidth=4 softtabstop=4: */

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品美日韩| 国产精品国产三级国产普通话三级| 国产精品一区二区久久不卡| 一区二区三区在线视频观看 | 日韩电影免费在线看| 国产欧美一区二区三区网站| 欧美日本在线视频| jlzzjlzz亚洲日本少妇| 美国一区二区三区在线播放| 亚洲人成电影网站色mp4| 精品久久一区二区| 欧美日韩一卡二卡三卡| 9色porny自拍视频一区二区| 日本大胆欧美人术艺术动态| 一区二区三区在线观看视频| 国产亚洲精品7777| 日韩欧美一区二区在线视频| 欧美在线999| 不卡电影一区二区三区| 国产酒店精品激情| 免费观看一级特黄欧美大片| 亚洲一区二区三区激情| 中文字幕一区av| 久久久久久久久久久99999| 777a∨成人精品桃花网| 欧美日韩专区在线| 在线亚洲人成电影网站色www| 国产很黄免费观看久久| 久久疯狂做爰流白浆xx| 日韩精品欧美精品| 视频一区二区三区入口| 亚洲国产一二三| 一区二区三区在线观看视频| 亚洲人成网站在线| 亚洲美女淫视频| 依依成人综合视频| 亚洲黄色小说网站| 亚洲另类在线一区| 亚洲视频免费在线| 亚洲美女视频在线| 亚洲精品中文在线| 亚洲与欧洲av电影| 亚洲国产欧美另类丝袜| 亚洲综合999| 亚洲国产精品久久不卡毛片 | 国产在线精品一区二区不卡了| 日韩高清欧美激情| 老司机一区二区| 国产乱人伦偷精品视频不卡| 国产麻豆视频一区| 成人avav影音| 色综合中文综合网| 色婷婷综合久久久中文一区二区| 91在线云播放| 在线观看精品一区| 欧美日韩精品免费| 日韩三级中文字幕| 久久综合色8888| 国产欧美一区二区三区鸳鸯浴 | 在线观看亚洲成人| 在线播放中文一区| 精品国产伦一区二区三区观看体验 | 国产精品久久久久久久久快鸭 | 日本女人一区二区三区| 国内外精品视频| 成人av电影在线观看| 欧美中文一区二区三区| 欧美一区二区视频网站| 2020国产精品自拍| 国产色婷婷亚洲99精品小说| 自拍偷拍亚洲激情| 奇米影视一区二区三区| 国产高清亚洲一区| 日本韩国精品在线| 日韩视频免费观看高清完整版在线观看| 精品伦理精品一区| 国产精品网站在线播放| 中文字幕一区二区三区在线不卡| 亚欧色一区w666天堂| 国产精品一卡二卡在线观看| 91在线视频18| 欧美一级高清片| 国产精品久久久久婷婷| 午夜成人在线视频| 国产成人精品亚洲777人妖| 色老汉一区二区三区| 欧美mv日韩mv亚洲| 亚洲精品五月天| 日本sm残虐另类| voyeur盗摄精品| 精品美女在线播放| 亚洲一二三区视频在线观看| 国产精品一区久久久久| 欧美视频在线不卡| 国产清纯美女被跳蛋高潮一区二区久久w| 自拍偷拍亚洲欧美日韩| 韩国成人精品a∨在线观看| 在线亚洲精品福利网址导航| 国产日韩欧美a| 亚洲国产综合视频在线观看| 粉嫩aⅴ一区二区三区四区五区| 欧美日韩国产一级二级| 亚洲欧洲日韩在线| 国产在线国偷精品免费看| 欧美日韩一区不卡| 亚洲色图制服丝袜| 国产99久久久精品| 欧美tk—视频vk| 视频一区欧美日韩| 欧美在线观看视频一区二区| 中文字幕日本不卡| 国产精品1区二区.| 日韩免费福利电影在线观看| 亚洲综合久久久| 91麻豆蜜桃一区二区三区| 国产清纯美女被跳蛋高潮一区二区久久w | 欧美色图天堂网| 中文字幕日本乱码精品影院| 国产成人av在线影院| 亚洲精品在线电影| 美女视频一区在线观看| 欧美日韩成人综合| 亚洲电影第三页| 日本二三区不卡| 亚洲天堂2014| eeuss影院一区二区三区| 国产欧美一区二区在线观看| 国产一区二区h| 精品国产乱码久久久久久闺蜜| 人人超碰91尤物精品国产| 欧美性感一区二区三区| 中文字幕制服丝袜一区二区三区 | 国产精品亚洲成人| 久久夜色精品一区| 精品一区二区三区视频在线观看 | 久久精品一区二区三区不卡| 麻豆91小视频| 欧美大片一区二区| 欧美aaaaaa午夜精品| 日韩欧美一级精品久久| 美女视频一区在线观看| 制服.丝袜.亚洲.中文.综合| 天天做天天摸天天爽国产一区| 欧美精品在线一区二区三区| 琪琪久久久久日韩精品| 精品成a人在线观看| 国产麻豆视频一区二区| 国产精品美女久久久久久久网站| 成人国产亚洲欧美成人综合网| 国产欧美日韩精品一区| aaa国产一区| 亚洲小说欧美激情另类| 91麻豆精品国产91久久久| 久久精品国产亚洲一区二区三区 | 一区二区三区在线视频观看58| 欧美影院一区二区三区| 爽好久久久欧美精品| 欧美大黄免费观看| 国产风韵犹存在线视精品| 国产精品卡一卡二| 欧美亚洲国产一区二区三区va | 欧美天堂一区二区三区| 免费成人美女在线观看.| 久久综合资源网| 不卡av在线免费观看| 亚洲黄色片在线观看| 欧美一级视频精品观看| 国产福利精品一区二区| 亚洲免费观看高清| 日韩视频在线你懂得| 成人激情免费网站| 亚洲成人av一区| 国产午夜亚洲精品午夜鲁丝片| 99精品一区二区| 日韩电影一区二区三区| 国产三区在线成人av| 色爱区综合激月婷婷| 久久草av在线| 亚洲人成精品久久久久久| 日韩一区二区精品葵司在线| jlzzjlzz欧美大全| 日韩和欧美的一区| 国产精品青草综合久久久久99| 欧美三级乱人伦电影| 国产成人欧美日韩在线电影| 亚洲五码中文字幕| 中文字幕免费观看一区| 欧美美女bb生活片| 丰满少妇在线播放bd日韩电影| 亚洲午夜电影网| 中文一区一区三区高中清不卡| 欧美午夜寂寞影院| 丁香婷婷综合色啪| 日本va欧美va精品发布| 亚洲免费在线视频| 精品国产sm最大网站| 欧美人动与zoxxxx乱| 99精品视频中文字幕| 国产在线视视频有精品| 亚洲mv大片欧洲mv大片精品|