【发布时间】:2011-04-22 21:18:00
【问题描述】:
这段代码是用 Visual Studio 2003 编写的,但现在我是在 2008 年编译的。
int AFXAPI AfxMessageBox(LPCTSTR lpszText, UINT nType = MB_OK, UINT nIDHelp = 0);
if(iiRecd == SOCKET_ERROR || iiRecd == 0) {
iErr = ::GetLastError();
AfxMessageBox(CString(iErr));
goto PreReturnCleanup;
}
在 2003 年,它工作正常,但在 2008 年,它显示错误:
错误 50 错误 C2440: '
' : 无法从 'int' 转换为 'CString'
这个错误是什么意思?
【问题讨论】:
-
你能告诉我们错误所在的代码行吗?
-
正如 Armen Tisrunyan 所观察到的,在没有看到有问题的代码的情况下,不能再说出错误消息已经说明的内容。
-
对于那些认为错误出现在 mysocket.cpp 的第 4539 行与相关的人,我总是感到惊讶。如果它在第 3 行,我们会给出相同的答案,真的。或者如果源文件存储在 C:\ 驱动器上。