Compilerwarnung (Ebene 4) C4764
Die Ausrichtung von catch-Objekten kann nicht mehr als 16 Bytes betragen.
Es wurde eine Ausrichtung angegeben, die mehr als 16 Bytes beträgt. Auf einigen Plattformen erzwingt der Stapel jedoch eine Ausrichtung von nicht mehr als 16 Bytes, wenn die Funktion eine Ausnahme auslöst.
Beispiel
Im folgenden Beispiel wird C4764 generiert.
// C4764.cpp
// compile with: /W4 /EHsc
// processor: x64 IPF
#include <stdio.h>
class A
{
public:
int x;
};
typedef __declspec(align(32)) A ALIGNEDA;
int main()
{
ALIGNEDA a;
try
{
a.x = 15;
throw a;
}
catch (ALIGNEDA b) // can't align b to > 16 bytes
{
printf_s("%d\n", b.x);
}
} // C4764
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für