我有一个奇怪的编译错误,当我跟随MSDN文档使用CA2W到中文字符串转换为Unicode字符串在Visual Studio 2005。
这是我写的代码:
#include <string>
#include <atldef.h>
#include <atlconv.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
string chineseInBig5 = "\xA4\xA4\xA4\xE5";
ATL::CA2W(chineseInBig5.c_str());
return 0;
}
编译错误:错误C3861:“AtlThrowLastWin32”:标识符找不到
我不知道这是怎么发生。 该AtlThrowLastWin32的文件显示,atldef.h是必需的,但我找不到AtlThrowLastWin32的atldef.h声明。