在調試二進制文件中使用第三方庫的發佈版本是不好的做法嗎?混合調試和發佈庫/二進制文件 - 不好的做法?
我正在使用第三方庫並編譯了一個發佈.lib庫。我的exe是在調試模式下開發的。然後我:
error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in test1.obj
一些谷歌上搜索,我發現那是因爲我想與調試混合出獄後,我也許應該編譯庫在調試模式或與_ITERATOR_DEBUG_LEVEL宏觀否則矇混過關。但我只是好奇,如果這是推薦的方式和原因。我需要爲每個我打算使用的第三方庫編譯和保存一個發行版和調試二進制文件的記錄,這很快就會很多,而無意調試到這些代碼。
您無法聯繫該第三方獲取調試版本或自己構建調試版本嗎? – 2012-07-25 21:35:26
這不僅僅是壞習慣:它幾乎可以保證程序會崩潰或做壞事。在VS2010之前,無論如何你都可以連接,在運行時發現奇怪的錯誤。現在至少你被阻止了。 – 2012-07-25 21:40:58
@JesseGood是的,我有源代碼,我剛剛編譯調試版本。問題解決了。我只是想知道如果我能編譯和跟蹤一種模式,我是否可以逃脫。顯然不是! – 2012-07-25 21:58:41