锘??xml version="1.0" encoding="utf-8" standalone="yes"?>中文一区字幕,亚洲欧美日韩人成在线播放,伊人久久婷婷http://www.shnenglu.com/ietj/category/5885.html瑙傛湜錛岀瓑寰呭彧鑳借鍑虹幇鐨勬満浼氱櫧鐧芥簻璧?/description>zh-cnThu, 22 May 2008 08:45:34 GMTThu, 22 May 2008 08:45:34 GMT60C++璧勬簮閲婃斁 http://www.shnenglu.com/ietj/articles/43781.html涓璺灝?/dc:creator>涓璺灝?/author>Wed, 05 Mar 2008 16:38:00 GMThttp://www.shnenglu.com/ietj/articles/43781.htmlhttp://www.shnenglu.com/ietj/comments/43781.htmlhttp://www.shnenglu.com/ietj/articles/43781.html#Feedback0http://www.shnenglu.com/ietj/comments/commentRss/43781.htmlhttp://www.shnenglu.com/ietj/services/trackbacks/43781.html    瑕佹兂瑙e喅涓婇潰鐨勯棶棰橈紝灝卞繀欏誨疄鐜拌祫婧愮殑鑷姩閲婃斁錛岀被鐨勬瀽鏋勫嚱鏁版濂藉彲浠ユ弧瓚蟲瑕佹眰錛屽氨璞℃爣鍑嗗簱涓櫤鑳芥寚閽堝氨鏄繖涔堝疄鐜扮殑錛屼絾闂鍦ㄤ簬鎴戜滑鐨勫弬鏁頒釜鏁幫紝鍙傛暟綾誨瀷鐨勪笉紜畾鎬с傝櫧鐒墮噸杞藉拰妯℃澘鍙互瑙e喅姝ら棶棰?榪欎篃鏄垜鍦ㄧ綉涓婄湅鍒扮殑瑙e喅鏂規硶)錛屼絾妯℃澘綾葷殑鍙傛暟涓嶅叿澶囪嚜鍔ㄦ帹瀵艱兘鍔涳紙緇忎紶鍏ユ垚鍛樺嚱鏁板弬鏁板兼帹瀵煎嚭妯℃澘鍙傛暟綾誨瀷錛夛紝鑰屼笖榪囧鐨勬ā鏉垮亸鐗瑰寲涔熶笉鏄垜鎵鎿呴暱鐨勶紝鏈涓昏鏄唬鐮佺殑縐繪鎬ф棤娉曚繚璇併?br>    鏈枃涓昏鍒╃敤鐨刡oost涓殑bind搴擄紝瑙夊緱浠垮嚱鏁扮殑鍔熻兘璺熻嚜宸卞綋鍓嶇殑闇姹備笉榪滀簡錛屽洜涓哄畠浠殑鍏卞悓鐐規湁:
1. 鍙互鎺ユ敹浠繪剰澶氫釜妯℃澘鍙傛暟(娌℃湁鍏蜂綋楠岃瘉錛岃嚦灝戞槸9涓惂),
2. 鍙互鍒╃敤鍑芥暟瀵規ā鏉垮弬鏁扮被鍨嬬殑鎺ㄥ鑳藉姏錛岀渷鍘諱簡鍙傛暟綾誨瀷鐨勬寚瀹氥?br>鍞竴涓嶅悓鐨勬槸bind鍚庣殑浠垮嚱鏁版槸绔嬪嵆鎵ц錛屼笉鑳藉叿鏈夌被鐨勬瀽鏋勫嚱鏁拌嚜鍔ㄦ墽琛岀殑浼樼偣銆傜洰鍓嶉渶瑕佽В鍐崇殑闂鏄帹榪熸墽琛屾湡錛屼篃鏃㈡妸operator()鍑芥暟縐誨埌鏋愭瀯鍑芥暟涓墽琛岋紝榪欏氨闇瑕佷繚瀛榖oost::bind(....)榪斿洖鐨勫璞★紝閫氳繃綾葷殑鏋勯犲嚱鏁板幓淇濆瓨錛岀劧鍚庡湪鏋愭瀯鍑芥暟涓墽琛宱perator()灝卞彲浠ヤ簡銆?br>    鎬濊礬鏄嚭鏉ヤ簡錛屼絾闂鏄痓oost::bind(...)鍑芥暟榪斿洖鐨勭被鍨嬩笉紜畾錛屽璞¢氳繃綾繪ā鏉挎槸鍙互淇濆瓨錛屼絾綾繪病鏈夎嚜鍔ㄦ帹瀵艱兘鍔涳紝榪樻槸鏃犳硶瀹炵幇錛岃繖閲屾垜灝卞埄鐢ㄤ簡boost::any鐨勫師鐞嗭紝姝eソ瑙e喅浜嗘闂錛岃屼笖瀹冧篃鍙互鐢ㄤ簬鍑芥暟鐨勫歡榪熸墽琛屻傝瑙佷互涓嬩嬌鐢ㄦ柟娉曪細
姝ラ1錛?瀹炵幇綾諱技浜巄oost:;any鐨勭被錛屼富瑕佸畬鎴愯祫婧愮殑鑷姩閲婃斁銆傚疄鐜板涓?
//SrcRelease.h澶存枃浠?br>#ifndef _SRCRELEASE_INC_
#define _SRCRELEASE_INC_

class CSrcRelease
{
public:
    template<typename T>
    CSrcRelease(const T & value)
        : m_pHelder(new Helder<T>(value))
    {
    }

    ~CSrcRelease()
    {
        delete m_pHelder;
    }

private:
    class IHelder
    {
    public:
        virtual ~IHelder() {}
    };

    template<typename T>
    class Helder : public IHelder
    {
    public:
        Helder(const T & value)
            : held(value)
        {
        }
        ~Helder()
        {
            held();
        }

    public: // representation
        T held;
    };

    IHelder* m_pHelder;
};

#endif //_SRCRELEASE_INC_

姝ラ2錛?涓嬭澆boost搴擄紝鍥犱負鍙敤鍒頒簡boost::bind搴擄紝鎵浠ユ棤闇緙栬瘧. 灝嗗ご鏂囦歡鐩綍鍔犲叆vs2005涓?br>姝ラ3錛?瀹㈡埛绔皟鐢?br>//main.cpp
#include "SrcRelease.h"
#include <iostream>
#include <Windows.h>
#include <boost/bind.hpp>
#include <cassert>

void _stdcall InvokeStr(const char* szValue)
{
    std::cout<<szValue<<std::endl;
}

bool _stdcall InvokeStr(const char* szValue, int a, int b)
{
    std::cout<<szValue<<"\ta: "<<a<<"\tb: "<<b<<std::endl;
    return true;
}

int main()
{
    //鐢變簬API閮芥槸_stdcall璋冪敤錛岃寁s2005鐜閮芥槸榛樿_cdecl錛屾墍浠ラ渶瑕佷慨鏀箆s2005鐜
    HBITMAP hBitmap=reinterpret_cast<HBITMAP>(LoadImage(NULL, L"test.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE));
    assert(hBitmap!=NULL);
    CSrcRelease aBitmapRelease(boost::bind(&DeleteObject, hBitmap));

    std::cout<<"Invoke Outer Before"<<std::endl;
    CSrcRelease aRelease(boost::bind(&InvokeStr, "Invoke Outer After", 8, 5));

    {
        std::cout<<"Invoke Inner Before"<<std::endl;
        CSrcRelease aRelease(boost::bind(&InvokeStr, "Invoke Inner After"));
        std::cout<<"Invoke Inner Middle"<<std::endl;
    }

    std::cout<<"Invoke Outer Middle"<<std::endl;
    return 0;
}

浠ヤ笂浠g爜鍦╳inxp+vs2005涓嬫祴璇曢氳繃錛屽鏈夌枒闂紝嬈㈣繋鑱旂郴: ietj@mail.china.com
 
                                                            鍝撴湀鍒
                                                            2008.3.5




]]>
国产精品久久久久久久久软件| 2020久久精品国产免费| 久久久这里有精品| 无码人妻久久一区二区三区免费| 久久国产精品99国产精| 久久夜色撩人精品国产| 亚洲成色WWW久久网站| 99久久综合狠狠综合久久| 伊人丁香狠狠色综合久久| 久久激情亚洲精品无码?V| 一本一道久久a久久精品综合| 久久精品国产亚洲av麻豆小说| 久久精品一区二区三区中文字幕 | 色综合久久中文字幕综合网| 欧美噜噜久久久XXX| 久久99精品国产99久久6| 人妻无码中文久久久久专区| 久久精品国产精品亚洲人人| 久久精品国产亚洲AV电影| 亚洲欧洲久久av| 爱做久久久久久| .精品久久久麻豆国产精品| 亚洲一区精品伊人久久伊人| 伊人久久综在合线亚洲2019| 久久国产精品无码一区二区三区| 狠狠色丁香久久婷婷综合_中 | 99久久99久久精品国产片果冻| 国产一区二区精品久久凹凸| 国产精品久久自在自线观看| 久久99国产综合精品女同| 久久天天躁夜夜躁狠狠| 国内精品久久国产| 午夜精品久久久久久影视777 | 久久精品不卡| 久久久久国产一区二区| 精品久久久久久久久久中文字幕 | 久久伊人中文无码| 久久成人18免费网站| 看全色黄大色大片免费久久久 | 国产99久久久久久免费看| 久久久久这里只有精品|