Partager via


Avertissement du compilateur (niveau 3) C4316

L’objet alloué sur le tas peut ne pas être aligné pour ce type.

Un objet sur-aligné alloué à l’aide operator new peut ne pas avoir l’alignement spécifié. Remplacez le nouveau opérateur et la suppression d’opérateurs pour les types sur-alignés afin qu’ils utilisent les routines d’allocation alignées, par exemple, _aligned_malloc et _aligned_free. L’exemple suivant génère l’erreur C4316 :

// C4316.cpp
// Test: cl /W3 /c C4316.cpp

__declspec(align(32)) struct S {}; // C4324

int main() {
    new S; // C4316
}