小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

C++中的連接錯(cuò)誤

 水底の小魚(yú) 2009-06-01
前兩個(gè)錯(cuò)誤:
nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already defined in LIBCD.lib(dbgdel.obj)
nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int,int,char const *,int)" (??2@YAPAXIHPBDH@Z) already defined in LIBCD.lib(dbgnew.obj)
原因
CRT 庫(kù)對(duì)new、delete 和 DllMain 函數(shù)使用弱外部鏈接。MFC 庫(kù)也包含new、delete 和 DllMain 函數(shù)。這些函數(shù)要求先鏈接 MFC 庫(kù),然后再鏈接CRT 庫(kù)。
解決方案
解決該問(wèn)題有兩種方法:第一種解決方案涉及到強(qiáng)制鏈接程序按照正確的順序鏈接庫(kù)。第二種解決方案是讓您查找導(dǎo)致問(wèn)題的模塊并糾正它。
一、強(qiáng)制鏈接程序按照正確的順序鏈接庫(kù)
1、在“工程”菜單中單擊“設(shè)置”項(xiàng)。
2、在彈出的“工程設(shè)置”對(duì)話框中,點(diǎn)擊“link”選項(xiàng)卡。
3、在“分類(lèi)”下拉框中選中“Input”選項(xiàng)。
4、在“對(duì)象/庫(kù)模塊”框中,插入庫(kù)名。必須確保這些庫(kù)按順序列出,且作為命令行中的前兩個(gè)庫(kù)(例如,Nafxcwd.lib Libcmtd.lib)列出。
要在 Visual C++ .NET 中設(shè)置該選項(xiàng),請(qǐng)閱讀"設(shè)置 Visual C++ 項(xiàng)目屬性"聯(lián)機(jī)幫助主題。
二、找到并糾正出現(xiàn)問(wèn)題的模塊
1、同上
2、同上
3、在“Project Option“框中鍵入 /verbose:lib。
4、重新生成項(xiàng)目。在鏈接過(guò)程中,這些庫(kù)將在輸出窗口中列出 。
更多信息
使用MFC 庫(kù)時(shí),務(wù)必先鏈接它們,然后再鏈接CRT 庫(kù)。這可以通過(guò)確保項(xiàng)目中的每個(gè)文件都首先包含 Msdev\Mfc\Include\Afx.h 來(lái)完成。直接包含 (#include ) 或間接包含 (#include ) 都可以。Afx.h 包含文件會(huì)通過(guò)使用 #pragma comment (lib,"") 指令來(lái)強(qiáng)制采用庫(kù)的正確順序。
如果源文件的擴(kuò)展名為 .c,或者該文件的擴(kuò)展名為 .cpp 但不使用 MFC,則可以創(chuàng)建一個(gè)較小的頭文件 (Forcelib.h) 并將其放在模塊的頂端。這個(gè)新頭文件可確保按照正確的順序搜索庫(kù)。
Visual C++ 不包含該頭文件。要?jiǎng)?chuàng)建此文件,請(qǐng)按照下列步驟操作:
1. 打開(kāi) Msdev\Mfc\Include\Afx.h。
2. 選定 #ifndef _AFX_NOFORCE_LIBS 和 #endif //!_AFX_NOFORCE_LIBS 之間的行。
3. 將選定部分復(fù)制到 Windows 剪貼板。
4. 創(chuàng)建一個(gè)新文本文件。
5. 將剪貼板的內(nèi)容粘貼到這個(gè)新文件中。
6. 將該文件另存為 Msdev\Mfc\Include\Forcelib.h。
后兩個(gè)錯(cuò)誤:
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
原因1:
可能沒(méi)有加頭文件<process.h>
原因2:
參數(shù)沒(méi)有設(shè)置好
[Project] --> [Settings] --> 選擇"C/C++"屬性頁(yè),
在Category中選擇Code Generation,
再在Use run-time library中選擇Debug Multithreaded或者multithreaded 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多