我有Visual Studio 2008中的#define _AFX_NO_DEBUG_CRT導致編譯錯誤,流
中的#include之前我加入我的stdafx.h一個_AFX_NO_DEBUG_CRT下MFC C++編譯器項目,以避免所有調試新刪除MFC提供的(我希望提供我自己的更好的跨平臺兼容性)。
但是當我這樣做,我得到錯誤的數據流,如下列:
>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2059: syntax error : '__asm'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2143: syntax error : missing ')' before '{'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2143: syntax error : missing ')' before '{'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2143: syntax error : missing ')' before '{'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2143: syntax error : missing ';' before '{'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : warning C4091: '' : ignored on left of 'int' when no variable is declared
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2143: syntax error : missing ';' before 'constant'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2143: syntax error : missing ';' before '}'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2143: syntax error : missing ';' before ','
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2059: syntax error : ')'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2059: syntax error : ')'
1>c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afxtls_.h(62) : error C2059: syntax error : ')'
1
我「認爲」它可能有一些做與__asm INT 3電話,但我不能肯定。有沒有人有過這個問題?如果是這樣,你是如何解決它的?我堅持MFC的內存跟蹤?我真的希望不要因爲它會讓我的圖書館少了很多跨平臺:(
任何幫助將非常感激!
仍然不回答爲什麼你的「跨平臺」庫鏈接MFC的問題? – 2009-08-12 19:38:36
MFC應用程序正在鏈接我的跨平臺庫... – Goz 2009-08-12 20:37:40
您是否介意解釋如何解決編譯問題? 我得到和你一樣的編譯錯誤 - 你是否刪除了你的#define _AFX_NO_DEBUG_CRT? – Alan 2009-10-14 15:20:25