Какво е динамичен тип в C#

Kakvo E Dinamicen Tip V C



Динамичният тип е въведен за първи път в C# версия 4.0, динамичният тип позволява да се декларират променливи с динамичен ключови думи. Това означава, че типът на променливата се определя по време на изпълнението на програмата, а не по време на фазата на компилиране. Тази гъвкавост се оказва полезна при работа с данни, чийто тип остава неизвестен до момента на изпълнение.

Какво е динамично писане

Динамичното въвеждане позволява присвояване на различни типове стойности на една и съща променлива по време на изпълнение. За разлика от статичното типизиране, където типът на променливата се определя по време на компилиране и остава фиксиран, динамичното типизиране предлага гъвкавост чрез определяне на типа по време на изпълнение въз основа на присвоената стойност. Той елиминира проверката на типа по време на компилиране, като я отлага за време на изпълнение.

При динамично типизиране проверката на типа не се извършва от компилатора по време на компилация. Вместо това типът на променливата се определя по време на изпълнение въз основа на присвоената стойност. Това позволява късно свързване, при което извикванията на методите и достъпът на членове се разрешават динамично въз основа на действителния тип на обекта.







Как да използвате динамичен тип в C#

За да използвате динамичен тип в C#, просто декларирате променлива, като използвате ключовата дума dynamic. Например:



динамична myVariable = 'Здравей свят!' ;

В този пример myVariable е декларирана като динамична променлива и й е присвоена стойността „Hello, World!“. По време на изпълнение типът на myVariable ще бъде определен като низ.



Пример за използване на динамичен тип в C#

Този код демонстрира използването на динамичната ключова дума в C#:





използвайки System ;
програма за публичен клас
{
публичен статичен невалиден Основен ( )
{
динамична myDynamicVariable = 42 ;
Конзола. WriteLine ( „Стойност: {0}, тип: {1}“ , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = 'Здравей свят!' ;
Конзола. WriteLine ( „Стойност: {0}, тип: {1}“ , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = невярно ;
Конзола. WriteLine ( „Стойност: {0}, тип: {1}“ , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = Време за среща. Сега ;
Конзола. WriteLine ( „Стойност: {0}, тип: {1}“ , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

MyCustomFunction ( myDynamicVariable ) ;
}

публичен статичен невалиден MyCustomFunction ( динамични данни )
{
Конзола. WriteLine ( „Изход на персонализирана функция: {0}“ , данни ) ;
}
}

Динамичната ключова дума позволява променлива да бъде въведена динамично, което означава, че нейният тип може да се променя по време на изпълнение. В кода променлива с име myDynamicVariable се декларира като динамичен и първоначално му е присвоена цяло число 42. След това се отпечатва заедно с неговия тип с помощта на Console.WriteLine.

След това на myDynamicVariable се присвоява стойност на низ („Hello World!“) и отново се отпечатва с нейния тип. Същият процес се повтаря за булева стойност и накрая за текущата дата и час, получени с помощта на DateTime.Now.



Кодът също така включва MyCustomFunction, която взема данни за динамични параметри и ги отпечатва. Функцията myDynamicVariable се нарича аргумент, демонстрирайки, че динамичните променливи могат да бъдат предавани на функции и техният тип може да бъде определен по време на изпълнение.

Заключение

Динамичният тип в C# 4.0 позволява променливите да бъдат декларирани, без да се посочва техният тип, което е полезно при работа с данни от неизвестни типове по време на изпълнение. Динамичното въвеждане позволява на компилатора да пропусне проверката на типа по време на компилация. Вместо това типът на променливата се определя, когато програмата се изпълнява, въз основа на стойността, която съдържа. Прочетете повече за динамичния тип в тази статия.