Разлика между тип стойност и референтен тип

Ключова разлика - Тип стойност спрямо препратка Тип
 

Езикът за програмиране е предназначен да дава инструкции на компютъра за изпълнение на задачи. Програмата може да манипулира данни, съдържащи числа, знаци и низове и да произвежда информация на потребителя. Поредица от инструкции, написани на определен език за програмиране, е програма. В езиците за програмиране като C # има маркери. Това са ключови думи, идентификатори, буквали и оператори. Запазените места за памет за съхраняване на данни са известни като променливи. Променлива може да съхранява стойност от определен тип. Типовете данни могат да бъдат разделени на тип стойност и референтен тип. Разграничаването между тип стойност и референтен тип зависи от две характеристики. Това са местата, където променливите се съхраняват в паметта и как се държат с оператора за присвояване. Тази статия обсъжда разликата между стойността тип и референтен тип. Най- ключова разлика между типа стойност и референтен тип е това тип стойност държи стойност на данните в собственото си пространство на паметта, докато референтен тип съдържа указател към друго място в паметта, което съхранява данните.

СЪДЪРЖАНИЕ

1. Преглед и ключова разлика
2. Какво е Value Value
3. Какво е референтен тип
4. Прилики между типа стойност и референтен тип
5. Паралелно сравнение - Тип стойност спрямо референтен тип в таблична форма
6. Резюме

Какво е тип стойност?

Типовете стойности могат да бъдат разделени на две категории. Те са предварително дефинирани типове и дефинирани от потребителя типове. Предварително зададените типове се предоставят от езика за програмиране. Те могат да бъдат цифрови, символни или десетични. Числовите типове могат да бъдат интегрални типове, типове с плаваща запетая и десетични типове. Интегралните типове могат да бъдат допълнително класифицирани в подписани и неподписани. Подписаните цели числа могат да съхраняват положително или отрицателно число. Sbyte, short, int и long са подписани типове данни.

Sybte е един байт, кратък е два байта, int е четири байта, а дългият е осем байта. Неподписаният тип съхранява положителни стойности. Байтът, ushort, uint и ulong са примерите за неподписани типове. Типовете с плаваща запетая могат да съхраняват числова стойност с десетична запетая. Поплавъкът е за съхранение на 32-битова единична точност с плаваща запетая, а двойният се използва за съхраняване на 64-битова единична прецизна плаваща точка. Десетичният тип е за стойности с висока точност. Типът char данни се използва за съхранение на един символ в паметта. Понякога се изисква да се съхранява истинска или невярна стойност. Булевата се използва за това. Това са някои примери за типове стойности, предоставени от езика за програмиране.

Потребителят може също да създава типове стойности. Два такива типа потребителски стойности са структура и изброяване. Структурата съдържа данни от различни видове. Подобно е на клас. Ключовата дума'struct 'се използва за деклариране на структурна променлива. Пример за структурата е следният.

struct Служител

обществен int empNo;

име на публичен низ;

Изброенията се използват за увеличаване на четливостта на кода. Използва се за даване на имена на числата. Ключовата дума 'enum' се използва за обявяване на изброяване. Пример за enum е следният. например - enum Цвят черен, бял, лилав. Ключовата дума enum автоматично изброява списък с думи, като присвоява стойности, започвайки от 0. Съгласно горния пример черното се присвоява с 0, бялото се назначава с 1, а лилавото се назначава с 2. Ако е написано като enum Color black, бял = 3, лилав, след това черното се присвоява с 0, а лилавото е назначено с 4. Това са някои примери за типови стойности. Те се съхраняват в стека. При присвояване на стойност на друга променлива, стойността се копира на новото място. Следователно в паметта съществуват две копия с една и съща стойност.

Какво е референтен тип?

Референтните типове могат да бъдат разделени на две категории като дефинирани от потребителя и предварително дефинирани типове. Някои примери за дефинирани от потребителя типове са класове, интерфейси и масиви. Клас се използва за създаване на обекти. Класът се състои от членове и методи за данни. Членовете на данните описват атрибутите, а методите описват поведението. Интерфейсът съдържа само декларацията на членовете. Членовете трябва да бъдат дефинирани от производния клас. Масивът може да съхранява множество елементи от един и същ тип данни.

Предварително зададените типове са тип обект и тип низ. Типът на обекта е базовият тип за всички други дефинирани от потребителя типове. Препратките към обекта се използват за свързване към обект от всеки конкретен тип. Низовите литерали се съхраняват в низови обекти като стойности. Операции като копиране, сравняване и конкатенация могат да се извършват с помощта на тях. Това са някои примери за референтен тип. Референтните типове се съхраняват на купчина. При присвояване на една референтна променлива на друга референтна променлива, само препратката се копира. Действителната стойност остава същата.

Какво е сходството между Тип стойност и Референтен тип?

  • И тип стойност, и референтен тип са категории типове данни в програмирането.

Каква е разликата между стойност на типа и референтен тип?

Тип стойност спрямо референтен тип

Тип стойност държи стойност на данните в собственото пространство на паметта. Референтен тип съдържа указател към друго място в паметта, което съхранява данните.
 назначение
При типа стойност стойността се копира на новото място, така че има две идентични копия с една и съща стойност в паметта. При референтния тип препратката се копира, докато действителната стойност остава същата.
Съхранено местоположение
Тип стойност се съхранява в стека. Референтен тип се съхранява на купчината.
 Примери
Int, float, double, struct, enum са някои примери за типови стойности. Класът, масивът, интерфейсът са някои примери за референтни типове.

резюме - Тип стойност спрямо препратка Тип

Данните се съхраняват на запазени места в паметта, известни като променливи. Всяка променлива съхранява конкретен тип данни. Типовете данни могат да бъдат разделени на две категории. Те са тип стойност и референтен тип. Разликата между типа стойност и референтен тип е, че тип стойност държи стойност на данните в собственото си пространство на паметта, докато референтен тип съдържа указател към друго място в паметта, което съхранява данните.

справка:

1.Тип стойност и референтен тип, TutorialsTeacher.com. Налични тук
2.Balagurusamy, E. Програмиране в C #, премиера. Четвърто издание, McGraw Hill Education (Индия) Private Limited, 2016.