Sdílet prostřednictvím


Součást rozšíření pro Runtime platformy

Visual C++ poskytuje rozšíření jazyka nápovědy programu proti runtime platformy.Pomocí rozšíření komponent v jazyce Visual C++ (C++/CX), můžete program Windows Store aplikace a součásti, které kompilace nativního kódu.Přestože můžete vytvořit Windows Store aplikacím pomocí programování přímo proti Windows Runtime rozhraní COM pomocí C++/CX, můžete pracovat s konstruktory, výjimky a další moderní C++ programming idioms.Umožňující programování C++ v prostředí spravovaném spuštění na platformu pomocí C++/CLI.

Dva runtime jednu sadu rozšíření

C++/CXje podmnožinou C++/CLI.Pro rozšíření, které jsou společné pro C++/CX a C++/CLI, sémantika závisí na tom, zda jsou cílení společného jazykového modulu runtime (CLR) nebo Windows Runtime.Kompilace vaší aplikace běžet Windows Runtime, zadejte /ZW volba kompilátoru.Kompilace jeho spuštění na CLR, určete /clr volba kompilátoru.Tyto přepínače jsou nastaveny automaticky při vytvoření projektu pomocí aplikace Visual Studio.

Další informace o vytvoření Windows Store aplikace v jazyce C++, viz Roadmap for Windows Store apps using C++.

C++/CLIstandard ISO/ANSI C++ rozšiřuje a je definována v Ecma C++/CLI standardní.Další informace naleznete v tématu .NET programování v jazyce C++.

Data zadejte klíčová slova

Zahrnout rozšíření jazyka agregační klíčová slova, které jsou klíčová slova, které se skládají z oddělených mezerami dva tokeny.Tokeny pravděpodobně jeden význam, pokud jsou použity samostatně a jiný význam, pokud jsou používány společně.Například slovo "ref" je běžným identifikátor a slovo "Třída" je klíčové slovo, které prohlašuje nativní třídy.Když tato slova jsou kombinovány do formuláře, ale ref class, výsledné celkové klíčové slovo prohlašuje entitu, která je známa jako runtime třídy.

Rozšíření také zahrnovat kontextovou klíčová slova.Klíčové slovo se chová jako kontextová typy prohlášení, které obsahuje a jeho umístění v tomto prohlášení.Například token "vlastnictví" může být identifikátor nebo jej můžete deklarovat zvláštní druh člen veřejné třídy.

Následující tabulka obsahuje klíčová slova v rozšíření jazyka C++.

Klíčové slovo

Kontextově

Účel

Odkaz

ref class

ref struct

Ne

Deklaruje třídy.

Třídy a struktury (rozšíření komponent C++)

value class

value struct

Ne

Hodnota třídy prohlašuje.

Třídy a struktury (rozšíření komponent C++)

interface class

interface struct

Ne

Deklaruje rozhraní.

interface class (rozšíření komponent C++)

enum class

enum struct

Ne

Deklaruje výčtu.

enum class (rozšíření komponent C++)

property

Ano

Deklaruje vlastnost.

property (rozšíření komponent C++)

delegate

Ano

Deklaruje delegáta.

delegate (rozšíření komponent C++)

event

Ano

Deklaruje událost.

event (rozšíření komponent C++)

Přepsat specifikátory

Následující klíčová slova můžete použít ke kvalifikaci přepsat chování pro odvození.Přestože new klíčové slovo není rozšíření C++, je zde uveden protože lze v další kontextu.Některé specifikátory platí také pro nativní programování.Další informace naleznete v tématu Jak: deklarovat specifikátory přepsat v nativní kompilace.

Klíčové slovo

Kontextově

Účel

Odkaz

abstract

Ano

Označuje, že funkce nebo třídy abstraktní.

abstract (rozšíření komponent C++)

new

Ne

Označuje funkce není lokálními verze základní třídy.

new (nový slot v tabulce vtable) (rozšíření komponent C++)

override

Ano

Označuje, že metoda musí být lokálními verze základní třída.

override (rozšíření komponent C++)

sealed

Ano

Zabraňuje tříd jako základní třídy.

sealed (rozšíření komponent C++)

Klíčová slova pro Generics

Byly přidány následující klíčová slova pro podporu obecné typy.Další informace naleznete v tématu Obecné typy (rozšíření komponent C++).

Klíčové slovo

Kontextově

Účel

generic

Ne

Obecný typ prohlašuje.

where

Ano

Určuje omezení, které jsou použity pro obecný typ parametru.

Různá klíčová slova

Rozšíření C++ byly přidány následující klíčová slova.

Klíčové slovo

Kontextově

Účel

Odkaz

finally

Ano

Označuje výchozí výjimka handlings chování.

Zpracování výjimek (rozšíření komponent C++)

for each, in

Ne

Vytvoří výčet prvků kolekce.

pro každý v

gcnew

Ne

Přiřazuje typy na něho uvolněna haldy.Use instead of new and delete.

ref new, gcnew (rozšíření komponent C++)

ref new

Ano

Přidělí Windows Runtime typu.Use instead of new and delete.

ref new, gcnew (rozšíření komponent C++)

initonly

Ano

Označuje, že člen lze inicializovat pouze v prohlášení nebo na statický konstruktor.

InitOnly

literal

Ano

Vytváří proměnnou literálu.

literal (rozšíření komponent C++)

nullptr

Ne

Určuje, že popisovač nebo ukazatel neodkazuje na objekt.

nullptr (rozšíření komponent C++)

Konstrukce šablony

Následující konstrukce jazyka jsou implementovány jako šablony, nikoli jako klíčová slova.Pokud zadáte /ZW volba kompilátoru jsou definovány v lang oboru názvů.Pokud zadáte /clr volba kompilátoru jsou definovány v cli oboru názvů.

Klíčové slovo

Účel

Odkaz

array

Deklaruje matice.

Pole (rozšíření komponent C++)

interior_ptr

(Pouze CLR) Odkazuje na data v typu odkazu.

interior_ptr (C++/CLI)

pin_ptr

(Pouze CLR) Body na typy odkazů CLR dočasně potlačit systému úklid.

pin_ptr (C++/CLI)

safe_cast

Určuje a optimální obsazení metody typu runtime.

safe_cast (rozšíření komponent C++)

typeid

(Pouze CLR) Načte System.Type objekt, který popisuje daný typ nebo objektu.

typeid (rozšíření komponent C++)

Declarators

Následující typ declarators pokyn runtime automaticky spravovat životnost a odstranění přidělené objektů.

Operátor

Účel

Odkaz

^

Deklaruje popisovač objektu; ukazatel Windows Runtime nebo CLR objektu, který je automaticky odstraněn, pokud již není použitelné.

Operátor popisovače objektu (^) (rozšíření komponent C++)

%

Deklaruje odkaz sledování; To znamená odkaz na Windows Runtime nebo CLR objektu, který je automaticky odstraněn, pokud již není použitelné.

Operátor sledovacího odkazu (rozšíření komponent C++)

Další konstrukce a Příbuzná témata

V této části jsou uvedeny další programovacích konstrukcí a témat, které se týkají CLR.

Téma

Description

__identifier (C++/CLI)

(Windows Runtime and CLR) Umožňuje používat klíčová slova jako identifikátory.

Seznamy argumentů s proměnnou délkou (...) (C++/CLI)

(Windows Runtime and CLR) Umožňuje vzít proměnný počet argumentů funkce.

.NET Framework ekvivalenty typy nativního C++ (C + +/ CLI)

Uvádí typy CLR, které se používají místo typů jazyka C++.

AppDomain__declspecModifikátor

__declspecModifikátor, která ukládá, že statické a globální proměnné existovat appdomain.

Přetypování ve stylu jazyka pomocí možnosti /clr (C++/CLI)

Popisuje způsob interpretace c styl nádech.

__clrcallkonvence volání

Označuje standardem CLR konvence volání.

__cplusplus_cli

Předdefinovaná makra

Vlastní atributy (C++)

Popisuje, jak definovat vlastní atributy CLR.

Zpracování výjimek (rozšíření komponent C++)

Přehled zpracování výjimek.

Explicitní přepsání (rozšíření komponent C++)

Ukazuje, jak funkce členů můžete přepsat libovolný členů.

Sestavení přítele (C++)

Popisuje způsob sestavení klienta přístup všech typů v sestavení komponentu.

Zabalení (rozšíření komponent C++)

Podmínky, které hodnoty jsou typy boxed ukazuje.

Podpora kompilátoru pro typové vlastnosti (C++ Component Extensions)

Tento článek popisuje charakteristiky typů zjistit v době kompilace.

managed, unmanageddeleteinstance

Ukazuje, jak spravovaného a nespravovaného funkce mohou existovat společně do téhož modulu.

process__declspecModifikátor

__declspecModifikátor, který ukládá statické a globální proměnné, že neexistují jeden proces.

Odraz (C + +/ CLI)

Uvádí informace o typu runtime verze CLR.

String (rozšíření komponent C++)

Popisuje kompilátor převodu řetězcových literálů do String.

Předávání typů (C++/CLI)

Umožňuje pohyb typu v sestavení námořní dopravy do jiného sestavení tak, aby klientský kód nemusí být provedena nová kompilace.

Uživatelsky definované atributy (rozšíření komponent C++)

Znázorňuje uživatelem definované atributy.

# použití směrnice (C++)

Importuje externí sestavení.

Dokumentace jazyk XML (Visual C++)

Vysvětluje pomocí kódu založeného na XML dokumentace/DOC (komentáře dokumentaci procesu) (C/C++)

Viz také

Další zdroje

.NET programování v jazyce C++

Nativní a vzájemná funkční spolupráce rozhraní .NET