Share via


C++/WinRT-Benennungskonventionen

Für C++/WinRT gelten die folgenden Namenskonventionen:

  • Der Namespace winrt::impl ist für C++/WinRT reserviert und sollte nicht in Ihrer Anwendung verwendet werden.
  • Im Namespace winrt gehören Namen, die mit einem Kleinbuchstaben beginnen, zu C++/WinRT, aber Sie können sie in Ihrer Anwendung verwenden. In der Dokumentation sind die Namen aufgeführt, für die Sie Überladung oder Spezialisierung durchführen können. Beispielsweise kann Ihre Anwendung für die Funktionsvorlage winrt::is_guid_of „specialize“ verwenden.
  • In Unternamespaces des Namespaces winrt (mit Ausnahme von winrt::impl) sind Namen, die mit einem Großbuchstaben beginnen, für Ihre Anwendung verfügbar.
  • In allen Namespaces sind Namen, die mit WINRT_IMPL_ beginnen, für C++/WinRT reserviert und sollten nicht in Ihrer Anwendung verwendet werden.
  • In allen Namespaces sind Namen, die mit WINRT_ beginnen (mit Ausnahme derjenigen, die mit WINRT_IMPL_ beginnen) für C++/WinRT reserviert. Sie können sie verwenden, und in der Dokumentation sind die Namen aufgeführt, die von Ihrer Anwendung definiert werden können, z. B. WINRT_LEAN_AND_MEAN.

Es ist üblich, dass Anwendungen eine Namespacekomposition durchführen und Unternamespaces des Stammnamespace winrt in den winrt-Stammnamespace importieren:

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

Daher sollte Ihre Anwendung die oben genannten Namenskonventionen in Unternamespaces des winrt-Namespaces einhalten.

Zusammenfassung:

Namespace Name Apps können definieren Apps können verwenden
winrt::impl Any Nein Nein
winrt und Unternamespaces (mit Ausnahme von impl) Beginnt mit einem Kleinbuchstaben Nein Ja
winrt und Unternamespaces (mit Ausnahme von impl) Beginnt mit einem Großbuchstaben Ja Ja
Any WINRT_IMPL_* Nein Nein
Any WINRT_* (außer WINRT_IMPL_*) Fall für Fall Ja