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


Download 0.58 Mb.
bet9/71
Sana08.05.2023
Hajmi0.58 Mb.
#1444224
TuriПрограмма
1   ...   5   6   7   8   9   10   11   12   ...   71
Bog'liq
С ОЙП

class Nuqta
{
int x,y;
public:
Nuqta(const Nuqta & koor);
Nuqta(int x0, int y0);
void Abstissa();
void Ordinata();
void Uzgartirish (int delta_x, int delta_y);
};
Nuqta::Nuqta(const Nuqta & koor)
{
x = koor.x; y = koor.y;
};
Nuqta::Nuqta(int x0, int y0){x = x0; y = y0;};
void Nuqta::Abstissa(){cout<<"x="<
void Nuqta::Ordinata(){cout<<"y="<
void Nuqta::Uzgartirish(int delta_x, int delta_y)
{
x+=delta_x; y+=delta_y;
};
int main( )
{
Nuqta koord1(5,10);
Nuqta koord2=koord1;
Nuqta koord3(koord1);
koord1.Uzgartirish (3, -2);
koord2.Uzgartirish (1, 2);
cout<<” koord1 объект берилган-аъзолари қиймати:\n”;
koord1.Abstissa();
koord1.Ordinata();
cout<<” koord2 объект берилган-аъзолари қиймати:\n”;
koord2.Abstissa();
koord2.Ordinata();
cout<<” koord3 объект берилган-аъзолари қиймати:\n”;
koord3.Abstissa();
koord3.Ordinata();
return 0;
}

Программа ишлаши натижасида экранга қуйидагилар чоп этилади:


koord1 объект берилган-аъзолари қиймати:
x=8
y=8
koord2 объект берилган-аъзолари қиймати:
x=6
y=12
koord3 объект берилган-аъзолари қиймати:
x=5
y=10


this кўрсаткичи

С++ тилидаги ҳар бир объект компилятор томонидан яратиладиган ва объектга кўрсатувчи this деб номланувчи махсус кўрсаткичга эга. this кўрсаткичининг тури S* бўлиб, бу ердаги S – ушбу объект синфи туридир. this кўрсаткичи синфда аниқланганлиги учун унинг амал қилиш соҳаси ўзи аниқланган синф бўлади. Бошқача айтганда, this кўрсаткичини компилятор томонидан қўшилувчи синфнинг яширинган параметри деб қараш мумкин. Синф функция-аъзоси чақирилганда унга this кўрсаткичи, гўёки биринчи аргумент сифатида узатилади. Яъни функция-аъзони чақиришнинг қуйидаги кўриниши



Download 0.58 Mb.

Do'stlaringiz bilan baham:
1   ...   5   6   7   8   9   10   11   12   ...   71




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