Conventions de nommage C++/WinRT

C++/WinRT a établi les conventions de nommage suivantes :

  • Dans la mesure où l’espace de noms winrt::impl est réservé pour C++/WinRT, vous ne devez pas l’utiliser dans votre application.
  • Dans l’espace de noms winrt, les noms qui commencent par une lettre minuscule appartiennent à C++/WinRT, mais vous pouvez les utiliser dans votre application. La documentation indique les noms que vous pouvez surcharger ou spécialiser. Par exemple, votre application est autorisée à spécialiser le modèle de fonction winrt::is_guid_of.
  • Dans les sous-espaces de noms de l’espace de noms winrt (à l’exception de winrt::impl), les noms qui commencent par une lettre majuscule sont disponibles pour votre application.
  • Dans tous les espaces de noms, les noms commençant par WINRT_IMPL_ sont réservés pour C++/WinRT. Vous ne devez donc pas les utiliser dans votre application.
  • Dans tous les espaces de noms, les noms commençant par WINRT_ (à l’exception de ceux qui commencent par WINRT_IMPL_ ) sont réservés pour C++/WinRT. Vous pouvez les utiliser. La documentation indique les noms qui peuvent être définis par votre application, par exemple WINRT_LEAN_AND_MEAN.

Bien souvent, les applications effectuent la composition d’un espace de noms et importent les sous-espaces de noms de l’espace de noms racine winrt dans l’espace de noms racine winrt :

namespace winrt
{
    using namespace winrt::Windows::Foundation;
}

Ainsi, votre application doit respecter les conventions de nommage ci-dessus dans les sous-espaces de noms de l’espace de noms winrt.

Voici un récapitulatif.

Espace de noms Nom Les applications peuvent définir Les applications peuvent utiliser
winrt::impl Quelconque Non Non
winrt et les sous-espaces de noms (à l’exception de impl) Commence par une lettre minuscule Non Oui
winrt et les sous-espaces de noms (à l’exception de impl) Commence par une lettre majuscule Oui Oui
Quelconque WINRT_IMPL_* Non Non
Quelconque WINRT_* (sauf WINRT_IMPL_*) Cas par cas Oui