Namngivningskonventioner för C++/WinRT

C++/WinRT har upprättat följande namngivningskonventioner:

  • Winrt::impl-namnområdet är reserverat för C++/WinRT och du bör inte använda det i ditt program.
  • I winrt-namnområdet tillhör namn som börjar med en gemen bokstav C++/WinRT, men du kan använda dem i ditt program. Dokumentationen anger de namn som kan överbelastas eller specialiseras. Ditt program kan till exempel specialisera sig på funktionsmallen winrt::is_guid_of .
  • I underordnade namnrymder till namnrymden winrt (utom winrt::impl) är namn som börjar med en stor bokstav tillgängliga för ditt program.
  • I alla namnområden är namn som börjar med WINRT_IMPL_ reserverade för C++/WinRT och du bör inte använda dem i ditt program.
  • I alla namnområden är namn som börjar med WINRT_ (förutom de som börjar med WINRT_IMPL_) reserverade för C++/WinRT. Du kan använda dem och i dokumentationen beskrivs de namn som kan definieras av ditt program, till exempel WINRT_LEAN_AND_MEAN.

Det är vanligt att program utför namnområdessammansättning och importerar undernamnsområden för winrt-rotnamnområdet till winrt-rotnamnområdet :

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

Därför bör ditt program följa namngivningskonventionerna ovan i undernamnrymder i winrt-namnområdet .

Här är en sammanfattning.

Namespace Name Appar kan definiera Appar kan använda
winrt::impl Någon No No
winrt och undernamnområden (förutom impl) Börjar med gemen No Yes
winrt och undernamnområden (förutom impl) Börjar med stor bokstav Yes Yes
Någon WINRT_IMPL_* No No
Någon WINRT_* (förutom WINRT_IMPL_*) Från fall till fall Yes