ich einen seltsamen Kompilierungsfehler bekam, als ich die MSDN document gefolgt CA2W zu verwenden, um zu konvertieren big5 Strings in Unicode-Strings in Visual Studio 2005.CA2W gab mir einen „‚AtlThrowLastWin32‘: Bezeichner nicht gefunden“ Fehler
Das ist das ist Code schrieb ich:
#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;
}
Der Übersetzungsfehler: Fehler C3861: 'AtlThrowLastWin32': Bezeichner nicht gefunden
ich weiß nicht, wie das passieren konnte. Die document of AtlThrowLastWin32 zeigt, dass atldef.h erforderlich ist, aber ich konnte die Erklärung von AtlThrowLastWin32 in atldef.h nicht finden.
MSDN (auf der Seite, die Sie verlinkt) sagt: > Anforderungen > Header-Datei: atlbase.h, atlconv.h (in atlconv.h erklärt) –
Dank Logan Capaldo. Ich fand schließlich, warum ich verwirrt war. Das Dokument von CA2AEX (http://msdn.microsoft.com/en-us/library/z0d7hetw(VS.80).aspx) erwähnt nur "Requirements Header: atlconv.h" – user95319