Samarqand davlat unversiteti raqamli texnolagiyalar fakulteti amaliy matematika va informatika yo



Download 65,83 Kb.
bet8/8
Sana10.07.2022
Hajmi65,83 Kb.
#772699
1   2   3   4   5   6   7   8
Bog'liq
Pragrammalash mustaqil ish 2-tarjimasi

Operatorlar
Oqim bilan bog'liq boshqa mavzuga o'tamiz: chiqarish va qo'shish operatorlarini ortiqcha yuklash. Bu C++ tilining kuchli xususiyati. Bu foydalanuvchi tomonidan belgilangan ma'lumotlar turlari uchun kiritish/chiqarishni qayta ishlash imkonini beradi int va double kabi asosiy turlar bilan bir xil. Misol uchun, agar sizda sinf ob'ekti bo'lsa cd1 deb nomlangan crawdad, uni bayonot bilan ko'rsatishingiz mumkin
cout << “\ncd1=” << cd1;
xuddi asosiy ma'lumotlar turi bo'lgani kabi.
Biz chiqarish va kiritish operatorlarini ortiqcha yuklashimiz mumkin, shunda ular faqat displey va klaviatura (cout va cin) bilan ishlaydi. Bir oz ko'proq ehtiyotkorlik bilan, biz ham ularni ortiqcha yuklashimiz mumkin, shunda ular ishlaydi
disk fayllari bilan. Biz ushbu ikkala vaziyatning misollarini ko'rib chiqamiz.
Cout va cin uchun ortiqcha yuk
Mana ENGLIO misoli, u uchun kiritish va chiqarish operatorlarini ortiqcha yuklaydi
Masofaviy sinf, shuning uchun ular cout va cin bilan ishlaydi.
// englio.cpp
// overloaded << and >> operators
#include
using namespace std;
class Distance // Ingliz tili masofaviy sinf
{
private:
int feet;
float inches;
public:
Distance() : feet(0), inches(0.0) // konstruktor (arglar yo'q)
{ }
// konstruktor (ikki arg)
Distance(int ft, float in) : feet(ft), inches(in)
{ }
friend istream& operator >> (istream& s, Distance& d);
friend ostream& operator << (ostream& s, Distance& d);
};
istream& operator >> (istream& s, Distance& d) // masofani oling
{ // foydalanuvchidan
cout << “\nEnter feet: “; s >> d.feet; // foydalanish
cout << “Enter inches: “; s >> d.inches; //oyuklangan
return s; //>> operatori
}
ostream& operator << (ostream& s, Distance& d) // ko'rsatish
{ // Masofa
s << d.feet << “\’-” << d.inches << ‘\”’; // foydalanish
return s; // haddan tashqari yuklangan
} //<< operator
int main()
{
Distance dist1, dist2; // masofalarni aniqlang
Distance dist3(11, 6.25); // dist3ni aniqlash, ishga tushirish
cout << “\nEnter two Distance values:”;
cin >> dist1 >> dist2; // foydalanuvchidan qiymatlarni olish
//display distances
cout << “\ndist1 = “ << dist1 << “\ndist2 = “ << dist2;
cout << “\ndist3 = “ << dist3 << endl;
return 0;
}
Ushbu dastur foydalanuvchidan ikkita Masofa qiymatini so'raydi va keyin ushbu qiymatlarni chop etadi va dasturda ishga tushirilgan boshqa qiymat. Mana o'zaro aloqa namunasi:

Download 65,83 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish