Čo je dynamický typ v C#

Co Je Dynamicky Typ V C



Dynamický typ bol prvýkrát predstavený v C# verzii 4.0, dynamický typ umožňuje deklarovať premenné s dynamický Kľúčové slová. Znamená to, že typ premennej sa určuje skôr počas vykonávania programu než počas fázy kompilácie. Táto flexibilita sa osvedčuje pri práci s údajmi, ktorých typ zostáva až do spustenia neznámy.

Čo je dynamické písanie

Dynamické písanie umožňuje priraďovať rôzne typy hodnôt rovnakej premennej počas behu. Na rozdiel od statického typovania, kde je typ premennej určený v čase kompilácie a zostáva pevný, dynamické písanie ponúka flexibilitu určením typu za behu na základe priradenej hodnoty. Eliminuje kontrolu typu v čase kompilácie tým, že ju odloží na runtime.

Pri dynamickom písaní kompilátor počas kompilácie nevykonáva kontrolu typu. Namiesto toho sa typ premennej určuje za behu na základe priradenej hodnoty. To umožňuje neskoré viazanie, kde sa volania metód a prístup členov riešia dynamicky na základe skutočného typu objektu.







Ako používať dynamický typ v C#

Ak chcete použiť dynamický typ v C#, jednoducho deklarujete premennú pomocou kľúčového slova dynamic. Napríklad:



dynamická moja premenná = 'Ahoj Svet!' ;

V tomto príklade je myVariable deklarovaná ako dynamická premenná a má priradenú hodnotu „Hello, World!“. Za behu sa typ myVariable určí ako reťazec.



Príklad použitia dynamického typu v C#

Tento kód demonštruje použitie dynamického kľúčového slova v C#:





pomocou systému ;
Program verejnej triedy
{
verejnosti statické neplatné Hlavná ( )
{
dynamická myDynamicVariable = 42 ;
Konzola. WriteLine ( 'Hodnota: {0}, typ: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = 'Ahoj Svet!' ;
Konzola. WriteLine ( 'Hodnota: {0}, typ: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = falošný ;
Konzola. WriteLine ( 'Hodnota: {0}, typ: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = Dátum Čas. Teraz ;
Konzola. WriteLine ( 'Hodnota: {0}, typ: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

MyCustomFunction ( myDynamicVariable ) ;
}

verejnosti statické neplatné MyCustomFunction ( dynamické údaje )
{
Konzola. WriteLine ( 'Výstup vlastnej funkcie: {0}' , údajov ) ;
}
}

Dynamické kľúčové slovo umožňuje dynamické zadávanie premennej, čo znamená, že jej typ sa môže počas behu meniť. V kóde premenná s názvom myDynamicVariable je deklarovaný ako dynamický a na začiatku je mu priradená celočíselná hodnota 42. Potom sa vytlačí spolu s jeho typom pomocou Console.WriteLine.

Ďalej sa myDynamicVariable priradí reťazcová hodnota („Hello World!“) a opäť sa vytlačí s jej typom. Rovnaký proces sa opakuje pre boolovskú hodnotu a nakoniec pre aktuálny dátum a čas získaný pomocou DateTime.Now.



Kód tiež obsahuje funkciu MyCustomFunction, ktorá preberá dáta dynamických parametrov a vytlačí ich. Funkcia myDynamicVariable sa nazýva argument, ktorý demonštruje, že dynamické premenné možno odovzdať funkciám a ich typ možno určiť za behu.

Záver

Dynamický typ v C# 4.0 umožňuje deklarovať premenné bez určenia ich typu, čo je užitočné pri práci s údajmi neznámych typov za behu. Dynamické písanie umožňuje kompilátoru preskočiť kontrolu typu počas kompilácie. Namiesto toho sa typ premennej určuje pri spustení programu na základe hodnoty, ktorú má. Prečítajte si viac o dynamickom type v tomto článku.