Объектга йўналтирилган программалаш


}; Nuqta & Nuqta::operator++()


Download 0.58 Mb.
bet42/71
Sana08.05.2023
Hajmi0.58 Mb.
#1444224
TuriПрограмма
1   ...   38   39   40   41   42   43   44   45   ...   71
Bog'liq
С ОЙП

};
Nuqta & Nuqta::operator++()
{
x++;
y++;
return *this;
}
Nuqta Nuqta::operator++(int)
{
Nuqta Oraliq=*this;
++*this;
return Oraliq;
}
Nuqta & Nuqta::operator--()
{
x--;
y--;
return *this;
}
Nuqta Nuqta::operator--(int)
{
Nuqta Oraliq=*this;
--*this;
return Oraliq;
}


int main()
{
int a,b;
Nuqta N1(-10,20);N2(15,25),N3;
++N1; //префикс инкремент операторини чақириш
N1.Qiymat_xy(a,b);
cout<<"(++N1).x=”<
N1++; //постфикс инкремент операторини чақириш
N1.Qiymat_xy(a,b);
cout<<"(N1++).x=”<
N3=--N2; //префикс декремент операторини чақириш
N3.Qiymat_xy(a,b);
cout<<"N3=--N2; => N3.x="<
N1.Qiymat_xy(a,b);
cout<<"N1.x="<ишлаши натижасида экранга
(++N1).x=11 (++N1).y=21
(N1++).x=12 (N1++).y=22
N3=--N2; => N3.x=14 N3.y=24
(N3=N1--).x=12 (N3=N1--).y=22
N1.x=11 N1.y=22
N2.x=14 N2.y=24
хабарлари чиқади.
Программада инкремент ва декремент операторларининг префикс ва постфикс кўринишларини қайта юклашни амалга оширишда ўзига хос йўл танланган. Масалан, инкремент операторининг префикс кўриниши учун аниқланган оператор функциянинг қайтарадиган қиймати синф объектига мурожаат, чунки инкремент операторининг постфикс кўриниш учун аниқланган оператор функция шу функцияни чақиради ва ўзгарган объектни қайтариб олиши керак. Умуман олганда, бу функцияларни бир–бирига боғлиқмас равишда аниқлаш мумкин:

Download 0.58 Mb.

Do'stlaringiz bilan baham:
1   ...   38   39   40   41   42   43   44   45   ...   71




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