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


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

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="<аргумент одатда ишлатишмайди, лекин зарур бўлганда ишлатиши мумкин. Бу аргументни ишлатишга мисол:
#include
class Nuqta
{
int x,y;
public:
Nuqta(int _x,int _y){x=_x; y=_y;}
Nuqta(){x=0; y=0;}
Qiymat_xy(int & _x,int & _y){_x=x; _y=y;}
Nuqta & operator++(int);
};
Nuqta & Nuqta::operator++(int n)
{
if (n!=0)
{
x+=n;
y+=n;
}
else
{
x++;
y++;
}
return *this;
}
int main()
{
Nuqta N1(10,20);
N1.operator++(100); //100 сонига инкремент
return 0;
}
Бу ҳолатнинг ўзига хослиги шундаки, постфикс инкремент операторининг оператор функциясини ошкор равишда чақиришга тўғри келади. Чунки компилятор

Download 0.58 Mb.

Do'stlaringiz bilan baham:
1   ...   40   41   42   43   44   45   46   47   ...   71




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