Partager via


Aide-mémoire (C++/CX)

Le Windows Runtime prend en charge les applications de plateforme Windows universelle (UWP). Ces applications s’exécutent uniquement dans un environnement de système d’exploitation fiable, utilisent des fonctions, des types de données et des appareils autorisés et sont distribuées via le Microsoft Store. C++/CX simplifie l’écriture d’applications pour le Windows Runtime. Cet article est un aide-mémoire ; pour obtenir une documentation plus complète, consultez Système de type.

Lorsque vous générez du code sur la ligne de commande, utilisez l’option du compilateur /ZW pour générer une application UWP ou un composant Windows Runtime. Pour accéder aux déclarations Windows Runtime, qui sont définies dans les fichiers de métadonnées Windows Runtime (.winmd), spécifiez la directive #using ou l’option du compilateur /FU. Lorsque vous créez un projet pour une application UWP, Visual Studio définit par défaut ces options et ajoute des références à toutes les bibliothèques Windows Runtime.

Aide-mémoire

Concept C++ standard C++/CX Notes
Types fondamentaux Types fondamentaux C++ Types fondamentaux C++/CX qui implémentent les types fondamentaux définis dans le Windows Runtime. L’espace de noms default contient les types fondamentaux intégrés C++/CX. Le compilateur mappe implicitement les types fondamentaux C++/CX aux types C++ standard.

La famille d’espaces de noms Platform contient les types qui implémentent les types Windows Runtime fondamentaux.
bool bool Valeur booléenne de 8 bits.
wchar_t, char16_t char16 Valeur non numérique 16 bits qui représente un point de code Unicode (UTF-16).
short

unsigned short
int16

uint16
Entier signé 16 bits.

Entier non signé 16 bits.
int

unsigned int
int

uint32
Entier signé 32 bits.

Entier non signé 32 bits.
long long ou __int64

unsigned long long
int64

uint64
Entier signé 64 bits.

Entier 64 bits non signé.
float, double float32, float64 Nombre à virgule flottante IEEE 754 32 bits ou 64 bits.
enum enum class

-ou-

enum struct
Énumération de 32 bits.
(Ne s’applique pas) Platform::Guid Valeur non numérique de 128 bits (un GUID) dans l'espace de noms Platform .
std::time_get Windows::Foundation::DateTime Structure date-time.
(Ne s’applique pas) Windows::Foundation::TimeSpan Structure timespan.
(Ne s’applique pas) Platform::Object^ Objet de base aux références comptabilisées dans la vue C++ du système de type Windows Runtime.
std::wstring

L"..."
Platform::String^ Platform::String^ est une séquence de caractères Unicode représentant du texte, immuable et faisant l'objet d'un décompte de références.
Pointeur Pointeur vers un objet (*) :

std::shared_ptr
Handle-to-object (^, prononcé « chapeau ») :

T^ identifier
Toutes les classes Windows Runtime sont déclarées à l’aide du modificateur handle-to-object. Les membres de l'objet sont accessibles à l'aide de l'opérateur class-member-access flèche (->).

Le modificateur chapeau signifie « pointeur vers un objet Windows Runtime où les références sont automatiquement comptabilisées ». Plus précisément, handle-to-object déclare que le compilateur doit insérer du code pour gérer le décompte de références de l’objet automatiquement, et supprimer l’objet si le décompte de références atteint zéro.
Référence Référence à un objet (&) :

T& identifier
Suivi des références (%) :

T% identifier
Seuls les types Windows Runtime peuvent être déclarés à l’aide du modificateur de référence de suivi. Les membres de l'objet sont accessibles à l'aide de l'opérateur class-member-access point (.).

La référence de suivi signifie « une référence à un objet Windows Runtime dont les références sont automatiquement comptabilisées ». Plus précisément, une référence de suivi déclare que le compilateur doit insérer du code pour gérer le décompte de références de l’objet automatiquement. Le code supprime l’objet si le nombre de références est égal à zéro.
déclaration de type dynamique new ref new Alloue un objet Windows Runtime et retourne un handle à cet objet.
gestion de la durée de vie d'un objet delete identifier

delete[] identifier
(Appelle le destructeur.) La durée de vie est déterminée par le décompte de références. Un appel à delete appelle le destructeur, mais ne libère pas lui-même la mémoire.
Déclaration de tableau T identifier[]

std::array identifier
Array<T^>^ identifier( size )

-ou-

WriteOnlyArray<T^> identifier( size )
Déclare un tableau modifiable unidimensionnel ou un tableau de type T^ en écriture seule. Le tableau lui-même est également un objet faisant l'objet d'un décompte de références qui doit être déclaré à l'aide du modificateur handle-to-object.

(Les déclarations de tableau utilisent une classe d'en-tête de modèle qui se trouve dans l'espace de noms Platform .)
déclaration de classe class identifier {}

struct identifier {}
ref class identifier {}

ref struct identifier {}
Déclare une classe de runtime avec une accessibilité private par défaut.

Déclare une classe de runtime avec une accessibilité public par défaut.
déclarations de structure struct identifier {}

(qui est une structure POD (Plain Old Data Structure)
value class identifier {}

value struct identifier {}
Déclare un struct POD avec une accessibilité private par défaut.

Une value class peut être représentée dans les métadonnées Windows, tandis qu’une class C++ standard ne le peut pas.

Déclare un struct POD avec une accessibilité public par défaut.

Une value struct peut être représentée dans les métadonnées Windows, tandis qu’une struct C++ standard ne le peut pas.
déclaration d'interface classe abstraite qui contient uniquement des fonctions virtuelles pures. interface class identifier {}

interface struct identifier {}
Déclare une interface avec une accessibilité private par défaut.

Déclare une interface avec une accessibilité public par défaut.
Déléguer std::function public delegate return-type delegate-type-identifier ( [ parameters ] ); Déclare un objet qui peut être appelé comme un appel de fonction.
Événement (Ne s’applique pas) event delegate-type-identifier event-identifier;

delegate-type-identifier delegate-identifier = ref new delegate-type-identifier( this [, parameters] );

event-identifier += *delegate-identifier;

-ou-

EventRegistrationToken token-identifier = object.event-identifier += delegate-identifier;

-ou-

auto token-identifier = object.event-identifier::add( delegate-identifier );

object.event-identifier -= token-identifier;

-ou-

object.event-identifier::remove( token-identifier );
Déclare un objet event, qui stocke une collection de gestionnaires d’événements (délégués) qui sont appelés lorsqu’un événement se produit.

Crée un gestionnaire d'événements.

Ajoute un gestionnaire d'événements.

L’ajout d’un gestionnaire d’événements retourne un jeton d’événement (token-identifier). Si vous prévoyez de supprimer explicitement le gestionnaire d'événements, vous devez enregistrer le jeton d'événement pour l'utiliser ultérieurement.

Supprime un gestionnaire d'événements.

Pour supprimer un gestionnaire d'événements, vous devez spécifier le jeton d'événement que vous avez enregistré lorsque le gestionnaire d'événements a été ajouté.
Propriété (Ne s’applique pas) property T identifier;

property T identifier[ index ];

property T default[ index ];
Déclare qu'une fonction membre de classe ou d'objet est accessible en utilisant la même syntaxe qui est utilisée pour accéder à des données membres ou à un élément de tableau indexé.

Déclare une propriété sur une fonction membre de classe ou d'objet.

Déclare une propriété indexée sur une fonction membre d'objet.

Déclare une propriété indexée sur une fonction membre de classe.
Types paramétrables modèles generic <typename T> interface class identifier {}

generic <typename T > delegate [return-type] delegate-identifier() {}
Déclare une classe d'interface paramétrée.

Déclare un délégué paramétré.
Types valeur Nullable std::optional<T> Platform::IBox <T> Permet aux variables des types scalaires et des structs value d’avoir la valeur nullptr.

Voir aussi

Informations de référence sur le langage C++/CX