[VC2003]Debug无错,Release出错一例

1、现象:Release时总是说一个函数无法链接。
原因:在CSpaceRobotDoc的头文件中申明了一个全局函数,实现在其定义文件内。CSpaceRotoDoc.cpp有自动生成的代码
// CSpaceRobotDoc 诊断
#ifdef _DEBUG
void CSpaceRobotDoc::AssertValid() const
{
CDocument::AssertValid();
}
void CSpaceRobotDoc::Dump(CDumpContext& dc) const
{
CDocument::Dump(dc);
}
#endif //_DEBUG
结果不小心把函数定义放在了#endif之前,所以在Release时没有这个函数的定义。
2、现象:Release出错,Debug无错:
原因:以前在别的机器上编译的obj文件存在,release时没有重新生成。clean building之后重新编译问题解决

Leave a Reply