3-ma'ruza funktsiyalar va sinflardan foydalanish. Funktsiya deklaratsiyasi. Funktsiya chaqiruvi. Funktsiyalar uchun bekor qilish sarlavha fayli. Standart sarlavha fayllari. Standart sinflardan foydalanish. Reja


-jadval. Oldindan belgilangan mavzu ob'ektlari C++


Download 137.72 Kb.
bet10/15
Sana09.03.2023
Hajmi137.72 Kb.
#1255999
1   ...   7   8   9   10   11   12   13   14   15
Bog'liq
Лек 3узб

9.1-jadval. Oldindan belgilangan mavzu ob'ektlari C++

Ism

Sinf

Tavsif

cin

oqim

Standart kiritish (klaviatura) bilan bog'langan.

cout

oqim

Standart chiqish (ekran) bilan bog'langan.

cerr

oqim

Buferlashsiz standart xato qurilmasi (ekran) bilan bog'langan.

tiqilib qolish

oqim

Buferlash bilan standart xato qurilmasi (ekran) bilan bog'langan.

Qabul qilish va oqimlash operatsiyalari
C++ tilidagi asosiy kiritish/chiqarish sinflari istream va ostreamdir. Ulardan birinchisi to'g'ri siljish operatorini (>>) haddan tashqari yuklaydi, u unga kirish vazifasini bajaradi va oqim operatoridan olish deb ataladi. Ostream klassi mos ravishda chapga siljish operatsiyasini ortiqcha yuklaydi (<<); chiqarish uchun ishlatiladi va oqimli operatsiya deb ataladi .
A ytish kerakki, standart rus terminologiyasi C++ da mavjud emas. Har kim o'zini o'zi ixtiro qiladi; ba'zan muvaffaqiyatli, ba'zan esa yo'q.
Bu erda eng oddiy kiritish operatorlari va. standart oqimlarda chiqish:
#include
int main()
{
belgi nomi [8.0];
cout << "Ismingizni kiriting: ";
cin>> nomi;
cout <<"Salom" << ism << "!";
qaytish 0;
}
Ko'rib turganingizdek, oqimlar bo'yicha operatsiyalar bilan ketma-ket belgilashga o'xshash operatsiyalarni ketma-ket zanjirlash mumkin. Ma'lumki, bu belgi shakli olib kelish va o'tish funktsiyalari o'z ob'ektiga havolani qaytarishi bilan ta'minlanadi.
O'rnatilgan turlar uchun ortiqcha yuklangan operatorlar
Istream va ostream sinflari barcha o'rnatilgan turlar uchun mos ravishda olish va oqim operatsiyalarini ortiqcha yuklaydi. Bu ushbu amallarni belgilarni, butun sonlarni, haqiqiy sonlarni (ya'ni, suzuvchi nuqta) va satrlarni o'qish va chiqarish uchun bir xilda qo'llash imkonini beradi. Mana kichik rasm, unda kiritishda xatolikni tekshirishning eng oddiy usuli ham ko'rsatilgan:
#include
bekor tekshiruvi (bekor) {
agar (!cin.good())
{
// Yoki faqat agar (!cin) {
cout << "Xato aniqlandi!";
chiqish (1);
}
int asosiy (yaroqsiz)
{
ikki barobar d;
long1;
cout << "O'zgaruvchan nuqta qiymatini kiriting: ";
cin >> d;
tekshirish();
cout << "Siz kiritdingiz: " << d << '\n';
cout << "Butun qiymatni kiriting: ";
cin >> 1;
tekshirish();
cout << "Siz kiritdingiz: " << 1 << '\n';
qaytish 0;
}
Q idiruv va oqim operatsiyalari (mos ravishda istream va ostream sinflari uchun) haddan tashqari yuklanishi mumkin, shuning uchun ular foydalanuvchi tomonidan belgilangan sinf ob'ektlarini kiritish yoki chiqarish uchun ishlatilishi mumkin. Quyidagi misol ushbu texnikani ko'rsatadi. Aslida, bunday hollarda, kiritish xatolarini aniqlash va qayta ishlashni ta'minlash mutlaqo zarur, ammo biz buni bu erda qilmadik.
#include
class Point { int x, y ;
ommaviy:
Nuqta(int xx = 0, int yy = 0) {
x=xx; y = yy;
}
dost istream &operator>>(istream&, Ballar);
dost ostream &operator“(ostream&, Ballar);
};
istream &operator”(istream &is, Point &p)
//
// Siz yozayotganda nuqta bu faqat bir juft raqamlar,
// bo'sh joy ajratilgan.
// bu >> r.x > r.y;
qaytish hisoblanadi;
}
ostream &operator<<(ostream &os.Point &p) {
//
// (x, y) shaklida chiqarish.
//
os<< ' ( '<< b. x<< ", "<< b. y<<') ' ;
qaytish OS;
}
int main() {
nuqta p ;
cout<< "Nuqta koordinatalarini kiriting: ";
cin>> p ;
cout << "Nuqta qiymatlari" << p ;
qaytish 0;
}
Formatlash
Kirish/chiqarish kutubxonasi formatlashning uchta usulini taqdim etadi: formatlashtiruvchi a'zo funksiyalarini chaqirish, manipulyatorlardan foydalanish yoki oqim bayroqlarini o'rnatish yoki tozalash.
A'zo funktsiyalarini formatlash
Bu funksiyalar iOS sinfining aʼzolari boʻlib, siz mos keladigan oqim atributini oʻqishingiz yoki oʻrnatishingiz uchun haddan tashqari yuklangan. Agar qo'ng'iroqda argument bo'lmasa, funktsiya atributning joriy qiymatini qaytaradi. Agar argument taqdim etilsa, funktsiya yangi qiymatni o'rnatadi va atributning oldingi qiymatini qaytaradi.

Download 137.72 Kb.

Do'stlaringiz bilan baham:
1   ...   7   8   9   10   11   12   13   14   15




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling