Convenciones de nomenclatura de C++/WinRT
C++/WinRT ha establecido las siguientes convenciones de nomenclatura:
- El espacio de nombres winrt::impl está reservado para C++/WinRT y no debe usarlo en la aplicación.
- En el espacio de nombres winrt, los nombres que comienzan con una letra minúscula pertenecen a C++/WinRT, pero puede usarlos en la aplicación. La documentación llama a los nombres que puede sobrecargar o especializar. Por ejemplo, la aplicación puede especializar la plantilla de función winrt::is_guid_of.
- En los subespacios de nombres del espacio de nombres winrt (excepto para winrt::impl) , los nombres que comienzan con una letra mayúscula están disponibles para la aplicación.
- En todos los espacios de nombres, los nombres que comienzan por WINRT_IMPL_ están reservados para C++/WinRT y no se deben usar en la aplicación.
- En todos los espacios de nombres, los nombres que comienzan por WINRT_ (excepto los que comienzan por WINRT_IMPL_ ) están reservados para C++/WinRT. Puede usarlos y la documentación llama a los nombres que la aplicación puede definir, como WINRT_LEAN_AND_MEAN.
Es habitual que las aplicaciones realicen la composición del espacio de nombres e importen subespacios de nombres del espacio de nombres raíz winrt al espacio de nombres raíz winrt:
namespace winrt
{
using namespace winrt::Windows::Foundation;
}
Por lo tanto, la aplicación debe cumplir las convenciones de nomenclatura anteriores en los subespacios de nombres del espacio de nombres winrt.
Aquí tiene un resumen.
Espacio de nombres | Nombre | Las aplicaciones pueden definir | Las aplicaciones pueden usar |
---|---|---|---|
winrt::impl | Any | No | No |
winrt y subespacios de nombres (excepto impl) | Comienza con una letra minúscula | No | Sí |
winrt y subespacios de nombres (excepto impl) | Comienza con una letra mayúscula | Sí | Sí |
Any | WINRT_IMPL_* | No | No |
Any | WINRT_* (excepto WINRT_IMPL_*) | Según el caso | Sí |