Kompyuter tizimlari kafedrasi




Download 5,29 Mb.
bet22/154
Sana08.01.2024
Hajmi5,29 Mb.
#131939
1   ...   18   19   20   21   22   23   24   25   ...   154
Bog'liq
Majmua

Mantiqiy literal qiymati true va false qiymatlaridan birini qabul qiladi. Mantiqiy literal turi boolda ifodalanadi.
null-literal:
bo’sh - literal turi null
C# da berilganlar turi: C# turlashgan til hisoblanadi. Har bir obyektni hosil qilishda uning turini e’lon qilish zarur (masalan butun son, haqiqiy son, shakl (form), oyna, tugma (knopka), satr va boshqalar). Shu orqali kompilyator xatolardan holi bo‘lishni, ya’ni o‘zgaruvchi qabul qilishi mumkin bo‘lgan qiymatlarni qabul qilishini ta’minlaydi. Obyekt turi kompilyatorga obyekt o‘lchamini (masalan int turidagi obyekt xotiradan 4 bayt egallaydi) va xossalarini (masalan forma ko‘rinadigan va ko‘rinmaydigan bo‘lishi mumkin) ko‘rsatadi.
Xuddi C++ va Java tillari kabi C# da ham turlar 2 guruhga ajratiladi: Oldindan aniqlangan tilning ichki turlari va foydalanuvchi (dasturchi) tomonidan aniqlanadigan turlar.
C# yana turlarni 2 kategoriyaga bo‘ladi: o‘lchovli turlar va ko‘rsatkichli turlar. Ular orasidagi asosiy farq qiymatlarini xotirada saqlash usuli. O‘lchovli turlar qiymati stekda saqlanadi. Ko‘rsatkichli turlar obyektning faqat adresini stekda, o‘zini esa asosiy xotirada saqlaydi. Asosiy xotiraga murojaat qilish stekka murojaat qilishdan ko‘ra sekin. Katta obyektlarni asosiy xotirada saqlash ko‘pgina imkoniyatlarga ega.
Stek berilganlar strukturasi bo‘lib, elementlarni “birinchi kelgan, oxirgi ketadi” prinsipi bo‘yicha saqlaydi. Stek protsessor tomonidan qo‘llab quvvatlanadigan xotira sohasiga tegishli. Unda lokal o‘zgaruvchilar saqlanadi. Stekka murojaat umumiy xotira sohasiga murojaatga nisbatan bir necha marotaba tezroq. Shuning uchun ma’lumotlarni stekda saqlash dasturning ishlash tezligini oshiradi. C# da o‘lchovli turlar (masalan: butun sonlar) qiymatini stekda saqlaydi va unga murojaat o‘zgaruvchi nomi bilan amalga oshiriladi.
Ko‘rsatkichli turlar asosiy xotirada joylashadi. Unga murojaat stekka murojaatga nisbatan sekinroq. Agar obyekt xotirada joylashgan bo‘lsa, o‘zgaruvchi uning faqat adresini saqlaydi. Bu adres stekda saqlanadi. Adres orqali dastur obyektga murojaat qiladi. Stekda joylashgan har bir o‘zgaruvchi ko‘rinish sohasidan chiqqan zahoti “сборщик мусора” tomonidan o‘chiriladi. Metod tanasida e’lon qilingan lokal o‘zgaruvchilar metod ishini tugatishi bilan o‘chiriladi. Xotirada joylashgan obyektlar ham “сборщик мусора” tomonidan o‘chiriladi. Bu obyektni ko‘rsatib turgan barcha ko‘rsatkichlar bilan obyekt orasidagi aloqa uzilganda amalga oshiriladi.

Download 5,29 Mb.
1   ...   18   19   20   21   22   23   24   25   ...   154




Download 5,29 Mb.