我想用g ++ 4.7使用dmalloc。使用最近g ++的dmalloc
錯誤消息我得到有:
/usr/include/dmalloc.h:457:32: error: declaration of 'char* strdup(const char*)' has a different exception specifier
/usr/include/string.h:130:14: error: from previous declaration 'char* strdup(const char*) throw()'
- 爲什麼C函數拋出異常?
- 我能以某種方式告訴編譯器在編譯時忽略throw()說明符嗎?
...或者我必須以某種方式修補dmalloc?
您正在將您的程序編譯爲C++而不是C程序。 –
我不理解評論。是的,它是一個C++程序,但是strdup是libc的一個功能。 – arved
當你使用g ++編譯時,你是如何決定函數來自libc的? –