當一個異常退出DLL中的函數時,mingw32運行時只是簡單地調用
終止
std :: unexpected而不是將該異常傳播到調用該DLL的代碼。這個問題有什麼解決方案? DLL和調用它的應用程序都使用相同的編譯器進行編譯。捕獲從DLL中拋出的異常
mingw32支持兩種不同的異常機制:SJLJ和Dwarf2。如果他們中的一個比另一個更好地工作?也許唯一的選擇是切換到MSVC或ICC,或者更改構建選項可以幫助嗎?
請注意,甚至沒有捕獲(...)將捕獲任何異常,甚至沒有內置類型(拋出1;),所以它不是關於異常類型的可見性。
有趣。可能每個庫都有靜態鏈接的C++運行時? – sharptooth 2010-11-09 13:24:07