C++ tili funksiyalaridagi imkoniyatlar Reja: 1. Amali 2. Xotira sinflari 3. Nomlar fazosi 4. Joylashtiriladigan (inline) funksiyalar Tayanch iboralar: :: amali, xotira sinflari, avtomat o'zgaruvchilar, registr o'zgaruvchilar, tashqi o'zgaruvchilar, statik o'zgaruvchilar, volatile sinfi o'zgaruvchilari, nomlar fazosi, joylashtiriladigan (inline) funksiyalar. :: amali:[3(60-61), 4(48)]Yuqorida qayd qilingandek, lokal o'zgaruvchi e'loni xuddi shu nomdagi global o'zgaruvchini «berkitadi» va bu joydan global o'zgaruvchiga murojat qilish imkoni bo'lmay qoladi. C++ tilida bunday holatlarda ham global o'zgaruvchiga murojat qilish imkoniyati saqlanib qolingan. Buning uchun «ko'rinish sohasiga ruxsat berish» amalidan foydalanish mumkin va o'zgaruvchi oldiga ikkita nuqta (::) qo'yish zarur bo'ladi. Misol tariqasida quyidagi programani keltiramiz: Programma ishlashi natijasida ekranga oldin 70 va keyin 5 sonlari chop etiladi. Xotira sinflari: [3(61-65),] O'zgaruvchilarning ko'rinish sohasi va amal qilish vaqtini aniqlovchi o'zgaruvchi modifikatorlari mavjud (5.1-jadval). 5.1-jadval. O'zgaruvchi modifikatorlari Avtomat o'zgaruvchilar. Auto modifikatori lokal o'zgaruvchilar e'lonida ishlatiladi. Odatda lokal o'zgaruvchilar e'lonida bu modifikator kelishuv bo'yicha qo'llaniladi va shu sababli amalda uni yozishmaydi. auto modifikatori blok ichida e'lon qilingan lokal o'zgaruvchilarga qo'llaniladi. Bu o'zgaruvchilar blokdan chiqishi bilan avtomatik ravishda yo'q bo'lib ketadi. Registr o'zgaruvchilar. Register modifikatori kompilyatorga, ko'rsatilgan o'zgaruvchini protsessor registrlariga joylashtirishga harakat qilishni tayinlaydi. Agar bu harakat natija bermasa o'zgaruvchi auto turidagi lokal o'zgaruvchi sifatida amal qiladi. O'zgaruvchilarni registrlarda joylashtirish programma kodini bajarish tezligi bo'yicha optimallashtiradi, chunki protsessor xotiradagi berilganlarga nisbatan registrdagi qiymatlar bilan ancha tez ishlaydi. Lekin registrlar soni cheklanganligi uchun har doim ham o'zgaruvchilarni registrlarda joylashtirishning iloji bo'lmaydi. register modifikatori faqat lokal o'zgaruvchilariga nisbatan qo'llaniladi, global o'zgaruvchilarga qo'llash kompilyatsiya xatosiga olib keladi. Tashqi o'zgaruvchilar. Agar programma bir nechta moduldan iborat bo'lsa, ular qandaydir o'zgaruvchi orqali o'zaro qiymat almashishlari mumkin (fayllar orasida). Buning uchun o'zgaruvchi birorta modulda global tarzda e'lon qilinadi va u boshqa faylda (modulda) ko'rinishi uchun u yerda extern modifikatori bilan e'lon qilinishi kerak bo'ladi. Extern modifikatori o'zgaruvchini boshqa faylda e'lon qilinganligini bildiradi. Tashqi o'zgaruvchilar ishlatilgan programmani ko'raylik. Oldin sarlavha.h faylida BayroqAlmashsin() funksiya sarlavhasi e'lon qilinadi, kyin modul1.cpp faylida tashqi o'zgaruvchi e'lon qilinadi va BayroqAlmashsin() funksiyasining tanasi aniqlanadi va nihoyat, masala.cpp faylida Bayroq o'zgaruvchisi tashqi deb e'lon qilinadi. Statik o'zgaruvchilar. Statik o'zgaruvchilar static modifikatori bilan e'lon qilinadi va o'z xususiyatiga ko'ra global o'zgaruvchilarga o'xshaydi. Agar bu turdagi o'zgaruvchi global bo'lsa, uning amal qilish sohasi e'lon qilingan joydan to fayl oxirigacha bo'ladi. Agar statik o'zgaruvchi funksiya yoki blok ichida e'lon qilinadigan bo'lsa, u funksiya yoki blokka birinchi kirishda initsializatsiya qilinadi. O'zgaruvchining bu qiymati funksiya keyingi chaqirilganida yoki blokka qayta kirishda saqlanib qoladi va bu qiymatni o'zgartirish mumkin. Statik o'zgaruvchilarni ...

Joylangan
05 Jun 2024 | 16:10:12
Bo'lim
Informatika va AT
Fayl formati
zip → doc
Fayl hajmi
20.38 KB
Ko'rishlar soni
83 marta
Ko'chirishlar soni
6 marta
Virus yo'q.
VirusTotal da tekshirish
O'zgartirgan san'a:
29.03.2025 | 00:20
Arxiv ichida: doc
Joylangan
05 Jun 2024 [ 16:10 ]
Bo'lim
Informatika va AT
Fayl formati
zip → doc
Fayl hajmi
20.38 KB
Ko'rishlar soni
83 marta
Ko'chirishlar soni
6 marta
Virus yo'q.
VirusTotal da tekshirish
O'zgartirish kiritilgan:
29.03.2025 [ 00:20 ]
Arxiv ichida: doc