Stručná referenční dokumentace (C++/CX)
prostředí Windows Runtime podporuje aplikace Univerzální platforma Windows (UWP), které se spouštějí pouze v důvěryhodném prostředí operačního systému, používají autorizované funkce, datové typy a zařízení a jsou distribuovány prostřednictvím Microsoft Store. C++/cx zjednodušuje psaní aplikací pro prostředí Windows Runtime. Tento článek je rychlým odkazem. Podrobnější dokumentaci najdete v tématu Typ systému.
při sestavování na příkazovém řádku použijte možnost kompilátoru /ZW k vytvoření aplikace UWP nebo součásti prostředí Windows Runtime. chcete-li získat přístup k deklaracím prostředí Windows Runtime, které jsou definovány v souborech prostředí Windows Runtime metadata (. winmd), zadejte #using direktivu nebo možnost kompilátoru #using . když vytvoříte projekt pro aplikaci UWP, Visual Studio ve výchozím nastavení tyto možnosti nastaví a přidá odkazy na všechny knihovny prostředí Windows Runtime.
Stručná referenční příručka
| Koncepce | Standardní C++ | C++/CX | Poznámky |
|---|---|---|---|
| Základní typy | Základní typy jazyka C++. | základní typy C++/cx implementující základní typy, které jsou definovány v prostředí Windows Runtime. | defaultObor názvů obsahuje integrované základní typy C++/CX. Kompilátor implicitně mapuje základní typy C++/CX na standardní typy C++.Platformrodina oborů názvů obsahuje typy, které implementují základní prostředí Windows Runtime typy. |
bool |
bool |
16bitová logická hodnota. | |
wchar_t, char16_t |
char16 |
16bitová nečíselná hodnota, která představuje bod kódu Unicode (UTF-16). | |
shortunsigned short |
int16uint16 |
16bitové celé číslo se znaménkem. 16bitová unsigned integer. |
|
intunsigned int |
intuint32 |
32 celé číslo se znaménkem. 32 bitová unsigned integer. |
|
long long ani __int64unsigned long long |
int64uint64 |
64 celé číslo se znaménkem. 64 bitová unsigned integer. |
|
float, double |
float32, float64 |
32 nebo 754 64 číslo s plovoucí desetinnou čárkou (). | |
enum |
enum class-nebo- enum struct |
32-bit výčtu. | |
| (Neplatí) | Platform::Guid |
128 bitová nenumerická hodnota (GUID) v Platform oboru názvů. |
|
std::time_get |
Windows::Foundation::DateTime |
Struktura data a času. | |
| (Neplatí) | Windows::Foundation::TimeSpan |
Struktura TimeSpan. | |
| (Neplatí) | Platform::Object^ |
základní objekt počítání referencí v zobrazení C++ systému prostředí Windows Runtimeho typu. | |
std::wstringL"..." |
Platform::String^ |
Platform::String^ je odkazovaná, neproměnlivá, sekvence znaků Unicode, které reprezentují text. |
|
| Ukazatel | Ukazatel na objekt ( * ):std::shared_ptr |
Popisovač na objekt ( ^ , vyslovit "Hat"):T ^ identifikátor |
všechny třídy prostředí Windows Runtime jsou deklarovány pomocí modifikátoru "popisovač na objekt". K členům objektu se přistupuje pomocí -> operátoru šipky () třídy – Member-Access.modifikátor hat znamená "ukazatel na objekt prostředí Windows Runtime, na který se automaticky počítá odkaz." Přesnější deklarace s popisovačem na objekt deklaruje, že by měl kompilátor vkládat kód pro automatické spravování počtu odkazů objektu a odstranění objektu, pokud počet odkazů přechází na nulu. |
| Reference | Odkaz na objekt ( & ):Tidentifikátor |
Sledovací odkaz ( % ):Tidentifikátor |
pomocí modifikátoru sledování odkazů lze deklarovat pouze typy prostředí Windows Runtime. K členům objektu lze přistupovat pomocí . operátoru tečka ()-Member-Access.sledovací odkaz znamená "odkaz na objekt prostředí Windows Runtime, na který se automaticky počítá odkaz." Přesnější sledovací odkaz deklaruje, že by měl kompilátor vkládat kód pro automatické spravování počtu odkazů objektu a odstranění objektu, pokud počet odkazů přechází na nulu. |
| Dynamická deklarace typu | new |
ref new |
přidělí objekt prostředí Windows Runtime a vrátí popisovač k tomuto objektu. |
| Správa životnosti objektů | deletedeletedelete[]delete[] |
(Vyvolá destruktor.) | Doba života je určena počítáním odkazů. Volání metody delete vyvolá destruktor, ale sám o sobě neuvolní paměť. |
| Deklarace pole | Identifikátor Tstd::arraystd::array |
Array<Array<^>^^>^(()-nebo- WriteOnlyArray<WriteOnlyArray<^>^>(() |
Deklaruje jednorozměrné pole typu T ^ s možností pouze pro zápis. Samotné pole je také objektem s vypočítaným odkazem, který musí být deklarován pomocí modifikátoru "popisovač na objekt". (Deklarace pole používají třídu hlaviček šablony, která je v Platform oboru názvů.) |
| Deklarace třídy | classclass{}structstruct{} |
ref classref class{}ref structref struct{} |
Deklaruje běhovou třídu, která má výchozí privátní přístupnost. Deklaruje běhovou třídu, která má výchozí přístupnost Public. |
| Deklarace struktury | structstruct{}(to znamená, že se jedná o jednoduchou starou datovou strukturu (POD)) |
value classvalue class{}value structvalue struct{} |
Deklaruje strukturu POD, která má výchozí privátní přístupnost. hodnotová třída může být reprezentovaná v Windows metadatech, ale standardní třída C++ nemůže být. Deklaruje strukturu POD, která má výchozí veřejnou přístupnost. struktura hodnoty může být reprezentovaná v Windows metadatech, ale standardní struktura C++ nemůže být. |
| Deklarace rozhraní | abstraktní třída, která obsahuje pouze čistě virtuální funkce. | interface classinterface class{}interface structinterface struct{} |
Deklaruje rozhraní, které má výchozí privátní přístupnost. Deklaruje rozhraní, které má výchozí veřejnou přístupnost. |
| Delegát | std::function |
public delegatepublic delegate– identifikátor typu[parametry] |
Deklaruje objekt, který lze vyvolat jako volání funkce. |
| Událost | (Neplatí) | eventeventudálosti – identifikátorDelegovaný typ – identifikátordelegáta-identifikátor– identifikátor typu[, parametry] identifikátor událostiidentifikátor delegáta -nebo- EventRegistrationTokenEventRegistrationToken = tokenu = ..+=+=;-nebo- autoauto = tokenu = . identifikátor událostiidentifikátor delegátaobjidentifikátor událostiidentifikátor tokenu -nebo- objidentifikátor událostiidentifikátor tokenu |
Deklaruje objekt události, který ukládá kolekci obslužných rutin událostí (delegáty), které jsou volány při výskytu události. Vytvoří obslužnou rutinu události. Přidá obslužnou rutinu události. Přidání obslužné rutiny události vrátí token události (identifikátor token). Pokud máte v úmyslu explicitně odebrat obslužnou rutinu události, je nutné uložit token události pro pozdější použití. Odebere obslužnou rutinu události. Chcete-li odebrat obslužnou rutinu události, je nutné zadat token události, který jste uložili při přidání obslužné rutiny události. |
| Vlastnost | (Neplatí) | propertypropertyIdentifikátorT;propertyIndexidentifikátorupropertypropertypropertydefault[default[]; |
Deklaruje, že členská funkce třídy nebo objektu je přístupná pomocí stejné syntaxe, která se používá pro přístup k datovému členu nebo indexovanému elementu pole. Deklaruje vlastnost pro členskou funkci třídy nebo objektu. Deklaruje indexovanou vlastnost u členské funkce objektu. Deklaruje indexovanou vlastnost pro členskou funkci třídy. |
| Parametrizované typy | šablony | generic <typenamegeneric <typename> interface class> interface class{}generic <typenamegeneric <typename> delegate> delegatedelegát – identifikátor |
Deklaruje parametrizovanou třídu rozhraní. Deklaruje parametrizovaného delegáta. |
| Typy hodnot s povolenou hodnotou Null | boost::optional<T> |
Platform:: IBox T> | Umožňuje proměnným skalárních typů a struktur hodnot mít hodnotu nullptr . |