首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

#undef THIS_FILE static char THIS_FILE[] = _FILE_//调试信息添这句是什么意思?

2013-03-01 
#undef THIS_FILE static char THIS_FILE[] __FILE__//调试信息加这句是什么意思???#ifdef _DEBUG#defi

#undef THIS_FILE static char THIS_FILE[] = __FILE__;//调试信息加这句是什么意思???
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

[解决办法]
#define DEBUG_NEW new(THIS_FILE, __LINE__)
THIS_FILE是用在DEBUG_NEW里
为什么不直接用new(__FILE__, __LINE__),因为较旧的编译器(如VC6.0)没有字符串池优化,可能会造成编译文件较大,所以用static char THIS_FILE[]声明唯一的副本
新版的(VS2005、2008、2010、2012)已经声明#define THIS_FILE __FILE__

热点排行