• <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>
            posts - 2,  comments - 25,  trackbacks - 0
                最近做一個項目,其中用到封裝的一個動態(tài)庫(lib+dll),其頭文件定義導出類型為 :
            #ifdef NetLink
            #define NETDIR __declspec(dllexport)
            #else
            #define NETDIR __declspec(dllimport)
            #endif

            NETDIR 
            void LinkDir();
            此動態(tài)庫編譯、使用均沒有任何問題。但是,某人突發(fā)奇想,能否將動態(tài)庫轉(zhuǎn)成靜態(tài)庫?

            于是,首先嘗試在代碼上不加任何修改,只在Visual Studio中將編譯選項改成“靜態(tài)庫lib”方式,結(jié)果在引用的工程中編譯失敗,報 error LNK2019: 無法解析的外部符號錯誤。

            難道是由于之前建立工程時選擇的是動態(tài)庫方式,因此不行?于是嘗試重建工程,選擇靜態(tài)庫方式,并將代碼整體移植。結(jié)果報錯依舊。

            上網(wǎng)搜索一番,有些思路,再次嘗試將頭文件定義成如下形式:
            #ifdef NetLink
            #define NETDIR extern "C" __declspec(dllexport)
            #else
            #define NETDIR extern "C" __declspec(dllimport)
            #endif

            NETDIR 
            void LinkDir();
            完成后,編譯引用工程,錯誤信息有些變化,之前的很多亂碼符號似的信息變成 error LNK2019: 無法解析的外部符號錯誤 “_imp_LinkDir()”。但還是無法通過編譯。

            最終頭文件改成
            #define NETDIR extern "C" 
            NETDIR 
            void LinkDir();

            編譯通過。

            總結(jié)出來:
            靜態(tài)庫方式定義導出函數(shù)只需在前面加上extern "C"即可!
            呵呵,小記一篇,高手直接忽略。

            posted on 2011-07-12 21:49 三夏健 閱讀(4867) 評論(22)  編輯 收藏 引用 所屬分類: C++
            国产精品亚洲综合专区片高清久久久| 国产精品gz久久久| 伊人久久精品无码二区麻豆| 99久久国产综合精品女同图片| 亚洲va中文字幕无码久久| 国产亚洲欧美精品久久久| 久久精品国产亚洲av瑜伽| 国产精品久久久久久久人人看| 久久人人妻人人爽人人爽| 国内精品久久久久久久影视麻豆| 亚洲性久久久影院| 久久亚洲精品中文字幕三区| 99久久香蕉国产线看观香| 精品一区二区久久久久久久网站| 亚洲国产成人精品女人久久久 | 国产精品一久久香蕉国产线看| 久久久九九有精品国产| 一日本道伊人久久综合影| 91精品国产色综合久久| 日本欧美国产精品第一页久久| 亚洲AV日韩精品久久久久久| 久久人人超碰精品CAOPOREN| 国产V亚洲V天堂无码久久久| 国产成人无码精品久久久性色| 久久AAAA片一区二区| 99久久精品午夜一区二区| 久久婷婷色综合一区二区| 2021国产成人精品久久| 蜜臀av性久久久久蜜臀aⅴ麻豆| 欧美与黑人午夜性猛交久久久| 久久亚洲国产精品一区二区| 狼狼综合久久久久综合网| 亚洲人成电影网站久久| 久久久久亚洲精品中文字幕| 国产精品成人精品久久久| 久久久久久狠狠丁香| 国产精品久久久久久福利69堂| 久久久久久九九99精品| 人妻无码久久一区二区三区免费| 青青草原精品99久久精品66| 无码久久精品国产亚洲Av影片|