Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

__w64

(Spécifiques à Microsoft) vous permet de marquer des variables, telles que lorsque vous compilez avec /Wp64 le compilateur signale tous les avertissements qui seraient enregistrés si vous avez compilé avec un compilateur 64 bits.

type __w64 identifier

type

L'un des trois types qui peuvent provoquer des problèmes dans le code qui est déplacé d'un 32 bits à un compilateur 64 bits : int, long, ou un pointeur.

identifier

L'identificateur de la variable que vous créez.

Remarque importante Important

L'option du compilateur de /Wp64 et le mot clé de __w64 est déconseillée et seront supprimés dans une version ultérieure du compilateur. Si vous utilisez l'option du compilateur /Wp64 sur la ligne de commande, le compilateur émet l'Avertissement de ligne de commande D9035. Au lieu d'utiliser cette option et ce mot clé pour détecter des problèmes de portabilité 64 bits, recourez à un compilateur Visual C++ qui cible une plateforme 64 bits. Pour plus d'informations, consultez Configuring Programs for 64-Bit (Visual C++).

Tout typedef qui a __w64 sur celui-ci doit avoir la valeur 32 bits sur x86 et 64 bits sur la famille de processeurs Itanium (IPF).

Le mot clé d' __w64 doit être spécifié sur tous les définitions de types qui changent de taille entre 32 64 de les plateformes de bits et. Pour un tel type, __w64 doit apparaître sur la définition 32 bits de typedef.

le mot clé d' __w64 est ignoré si la compilation n'utilise pas /Wp64.

Pour plus d'informations sur le portage à 64 bits, consultez les rubriques suivantes :

// __w64.cpp
// compile with: /W3 /Wp64
typedef int Int_32;
#ifdef _WIN64
typedef __int64 Int_Native;
#else
typedef int __w64 Int_Native;
#endif

int main() {
   Int_32 i0 = 5;
   Int_Native i1 = 10;
   i0 = i1;   // C4244 64-bit int assigned to 32-bit int

   // char __w64 c;  error, cannot use __w64 on char
}

Ajouts de la communauté

AJOUTER
Afficher: