Co je dynamický typ v C#

Co Je Dynamicky Typ V C



Dynamický typ byl poprvé představen v C# verze 4.0, dynamický typ umožňuje deklarovat proměnné pomocí dynamický klíčová slova. To znamená, že typ proměnné je určen během provádění programu, nikoli během fáze kompilace. Tato flexibilita se osvědčuje při práci s daty, jejichž typ zůstává až do běhu neznámý.

Co je dynamické psaní

Dynamické psaní umožňuje za běhu přiřazovat stejné proměnné různé typy hodnot. Na rozdíl od statického typování, kde je typ proměnné určen při kompilaci a zůstává pevný, dynamické typování nabízí flexibilitu určením typu za běhu na základě přiřazené hodnoty. Eliminuje kontrolu typu v době kompilace tím, že ji odkládá na běhové prostředí.

Při dynamickém psaní není kontrola typu prováděna kompilátorem během kompilace. Místo toho je typ proměnné určen za běhu na základě přiřazené hodnoty. To umožňuje pozdní vazbu, kde se volání metod a přístup členů řeší dynamicky na základě skutečného typu objektu.







Jak používat dynamický typ v C#

Chcete-li použít dynamický typ v C#, jednoduše deklarujete proměnnou pomocí klíčového slova dynamic. Například:



dynamická myVariable = 'Ahoj světe!' ;

V tomto příkladu je myVariable deklarována jako dynamická proměnná a je jí přiřazena hodnota „Hello, World!“. Za běhu bude typ myVariable určen jako řetězec.



Příklad použití dynamického typu v C#

Tento kód ukazuje použití dynamického klíčového slova v C#:





pomocí System ;
Program veřejné třídy
{
veřejnost statický prázdnota Hlavní ( )
{
dynamická myDynamicVariable = 42 ;
Řídicí panel. WriteLine ( 'Hodnota: {0}, typ: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = 'Ahoj světe!' ;
Řídicí panel. WriteLine ( 'Hodnota: {0}, typ: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = Nepravdivé ;
Řídicí panel. WriteLine ( 'Hodnota: {0}, typ: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = Čas schůzky. Nyní ;
Řídicí panel. WriteLine ( 'Hodnota: {0}, typ: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

MyCustomFunction ( myDynamicVariable ) ;
}

veřejnost statický prázdnota MyCustomFunction ( dynamická data )
{
Řídicí panel. WriteLine ( 'Výstup vlastní funkce: {0}' , data ) ;
}
}

Klíčové slovo dynamic umožňuje dynamické zadávání proměnné, což znamená, že její typ se může za běhu měnit. V kódu je proměnná s názvem myDynamicVariable je deklarován jako dynamický a zpočátku je mu přiřazena celočíselná hodnota 42. Poté se vytiskne spolu s jeho typem pomocí Console.WriteLine.

Dále je myDynamicVariable přiřazena řetězcová hodnota („Hello World!“) a znovu vytištěna se svým typem. Stejný proces se opakuje pro booleovskou hodnotu a nakonec pro aktuální datum a čas získaný pomocí DateTime.Now.



Kód také obsahuje MyCustomFunction, která bere data dynamických parametrů a tiskne je. Funkce myDynamicVariable se nazývá argument a demonstruje, že dynamické proměnné lze předávat funkcím a jejich typ lze určit za běhu.

Závěr

Dynamický typ v C# 4.0 umožňuje deklarovat proměnné bez určení jejich typu, což je užitečné při práci s daty neznámého typu za běhu. Dynamické psaní umožňuje kompilátoru přeskočit kontrolu typu během kompilace. Místo toho je typ proměnné určen při spuštění programu na základě hodnoty, kterou má. Přečtěte si více o dynamickém typu v tomto článku.