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

            大龍的博客

            常用鏈接

            統計

            最新評論

            com對象和類廠對象 引用計數有時初始化為1 的 原因!!!!!

            1.在構造函數中把引用計數初始化為1
            HRESULT   _stdcall   IClassFactory::CreateInstance(IUnknown   *   pUnkOuter,REFIID   riid,void   **   ppvObject)  
              {  
                    pObject   =   new   CObject();//此時m_dwRef為一  
                    HRESULT   hr   =   if(pObject)   pObject->QueryInterface(riid,   ppvObject);  
                    pObject->Release();    //不管查找接口是否成功,都去release(),,  如果沒找到,進行自刪除
                    return   hr;  
              }  



            2.在構造函數中把引用計數初始化為0
            HRESULT CDictionaryFactory::CreateInstance(IUnknown *pUnknownOuter,
                         const IID& iid, void **ppv)
            {
               CDictionary * pObj = new CDictionary();;  
               HRESULT hr;    

               if (NULL==pObj)
                  return hr;   
               
               hr=pObj->QueryInterface(iid, ppv);

               if (hr != S_OK) { 
               delete pObj;  //如果沒找到對象直接刪除
               }

            兩種方法都是com內部實現,,與外部使用者無關...也就是說使用完全一樣

            posted on 2007-09-12 19:51 大龍 閱讀(253) 評論(0)  編輯 收藏 引用

            久久精品国产乱子伦| 区久久AAA片69亚洲| 国产一级持黄大片99久久| 国产综合久久久久久鬼色| 久久九九久精品国产| 一本久久免费视频| 精品久久久久久综合日本| 狠狠综合久久综合中文88| 伊人久久精品无码av一区| 久久99国产精品久久| 伊色综合久久之综合久久| 九九精品99久久久香蕉| 久久久高清免费视频| 女人香蕉久久**毛片精品| av色综合久久天堂av色综合在 | 99精品久久久久久久婷婷| 99久久无码一区人妻a黑| 亚洲国产成人久久一区WWW| 久久精品草草草| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 日韩欧美亚洲综合久久| 久久香蕉国产线看观看99| 午夜精品久久久久久久| 亚洲国产日韩欧美久久| 99久久久久| 久久91亚洲人成电影网站| 久久精品国产精品国产精品污| 久久人妻少妇嫩草AV蜜桃| 精品久久久久久| 99久久人妻无码精品系列| 波多野结衣AV无码久久一区| 中文字幕无码久久人妻| 免费一级做a爰片久久毛片潮| 久久综合九色综合欧美狠狠| 国产高潮国产高潮久久久| 欧美熟妇另类久久久久久不卡 | 蜜臀av性久久久久蜜臀aⅴ| 中文字幕日本人妻久久久免费| 最新久久免费视频| 亚洲午夜久久久久久噜噜噜| 亚洲中文精品久久久久久不卡|