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

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

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

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

            上網搜索一番,有些思路,再次嘗試將頭文件定義成如下形式:
            #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();

            編譯通過。

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

            posted on 2011-07-12 21:49 三夏健 閱讀(4872) 評論(22)  編輯 收藏 引用 所屬分類: C++
            久久亚洲AV成人无码电影| 亚洲综合精品香蕉久久网97| 日韩AV毛片精品久久久| 无码国内精品久久人妻麻豆按摩| 久久精品国产第一区二区| 久久精品国产亚洲AV不卡| 亚洲色婷婷综合久久| 狠狠色丁香久久婷婷综| 久久五月精品中文字幕| 影音先锋女人AV鲁色资源网久久 | 77777亚洲午夜久久多人| 国产亚洲精久久久久久无码| 久久97久久97精品免视看| 久久久精品人妻一区二区三区蜜桃| yy6080久久| 久久国产成人亚洲精品影院| 亚洲AV日韩精品久久久久久久| 99久久夜色精品国产网站| 亚洲综合伊人久久综合| 久久久久国产亚洲AV麻豆| 精品久久久久中文字幕日本| 四虎国产精品成人免费久久| 国产成人无码精品久久久久免费 | 久久久91精品国产一区二区三区 | 久久久久久人妻无码| 热久久视久久精品18| 成人a毛片久久免费播放| 久久久久亚洲Av无码专| 久久午夜无码鲁丝片秋霞| 精品久久久久久国产免费了| 99re久久精品国产首页2020| 久久久亚洲欧洲日产国码aⅴ| 午夜精品久久久久成人| 999久久久国产精品| 久久电影网一区| 国产亚洲美女精品久久久久狼| 无码人妻精品一区二区三区久久久 | 99久久婷婷国产一区二区| 国产精品久久久久久福利69堂| 中文字幕久久精品无码| 人妻无码αv中文字幕久久琪琪布 人妻无码久久一区二区三区免费 人妻无码中文久久久久专区 |