2012-11-07 64 views
2

我一直在想我的電腦上運行此log4cplus運行示例代碼時:bad_alloc的錯誤使用log4cplus

http://log4cplus.sourceforge.net/loglevel.html

我已經建立了我LogLevel的項目中使用VS2010和我使用log4cplus V1。 1.0。

我的程序編譯罰款,但是當我踏上這條線

Logger logger = Logger::getInstance(LOG4CPLUS_TEXT("main")); 

我得到以下錯誤:

Unhandled exception at 0x75d5d3cf in LogLevel.exe: Microsoft C++ exception: std::bad_alloc at memory location 0x0030ed2c.. 

在」 .. \微軟的Visual Studio 10.0 \ VC \ CRT \ SRC \ new.cpp「文件(第63行)

我該如何解決這個問題?

我知道有another SO thread談論同樣的問題,但不幸的是它是沒有解決。

+0

請參閱我對您鏈接到的SO線索的回答。它可能有幫助。 – FishesCycle

+0

@jpen:您是否將log4cplus用作靜態庫? – wilx

+0

@wilx - 我剛剛閱讀你的評論。是的,我將它用作靜態庫。 – jpen

回答

0

如果您在調試中構建應用程序,請務必鏈接到lib4CplusD.lib和lib4CplusD.dll。同樣,發佈應用程序應鏈接aginst lib4cplus.lib和lib4cplus.dll我有相同的運行時錯誤,並且當我將調試應用程序與調試庫鏈接時,問題已解決。

Logger::getInstance causing bad_alloc exception in log4cplus