Convenzioni di denominazione C++/WinRT
C++/WinRT ha stabilito le convenzioni di denominazione seguenti:
- Lo spazio dei nomi winrt::impl è riservato per C++/WinRT e non è consigliabile usarlo nell'applicazione.
- Nello spazio dei nomi winrt, i nomi che iniziano con una lettera minuscola appartengono a C++/WinRT, ma è possibile usarli nell'applicazione. La documentazione chiama i nomi di cui è possibile eseguire l'overload o la specializzazione. Ad esempio, l'applicazione può specializzare il modello di funzione winrt::is_guid_of.
- Negli spazi dei nomi secondari dello spazio dei nomi winrt (ad eccezione di winrt::impl), i nomi che iniziano con una lettera maiuscola sono disponibili per l'applicazione.
- In tutti gli spazi dei nomi, i nomi che iniziano con WINRT_IMPL_ sono riservati per C++/WinRT e non devono essere usati nell'applicazione.
- In tutti gli spazi dei nomi i nomi che iniziano con WINRT_ (ad eccezione di quelli che iniziano con WINRT_IMPL_) sono riservati per C++/WinRT. È possibile usarli e la documentazione chiama i nomi che possono essere definiti dall'applicazione, ad esempio WINRT_LEAN_AND_MEAN.
È comune per le applicazioni eseguire la composizione dello spazio dei nomi e importare gli spazi dei nomi secondari dello spazio dei nomi radice winrt nello spazio dei nomi radice winrt:
namespace winrt
{
using namespace winrt::Windows::Foundation;
}
Pertanto, l'applicazione deve rispettare le convenzioni di denominazione precedenti nei sotto-spazi dei nomi dello spazio dei nomi winrt.
Ecco un riepilogo.
Spazio dei nomi | Nome | Le app possono definire | Le app possono usare |
---|---|---|---|
winrt::impl | Qualsiasi | No | No |
winrt e sotto-spazio dei nomi (ad eccezione di impl) | Inizia con una lettera minuscola | No | Sì |
winrt e sotto-spazio dei nomi (ad eccezione di impl) | Inizia con una lettera maiuscola | Sì | Sì |
Qualsiasi | WINRT_IMPL_* | No | No |
Qualsiasi | WINRT_* (ad eccezione di WINRT_IMPL_*) | Caso per caso | Sì |