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


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

class Nuqta
{
int x;
int y;
public :
Get_x(){return x;}
Get_y(){return y;}
void Set_x(int _x);
void Set_y(int _y);
}
inline void Nuqta::Set_x(int _x) {x= _x;}
inline void Nuqta::Set_y(int _y) {y= _y;}


Синфнинг статик аъзолари

Синф аъзолари static модификатори билан эълон қилиниши мумкин. Синф статик аъзосини синф соҳаси чегарасида мурожаат қилиш мумкин бўлган глобал ўзгарувчи ёки функция деб қараш мумкин. Синфнинг static деб эълон қилинган берилганлар-аъзолари синфнинг барча объектлари томонидан биргаликда ишлатилади, чунки бундай ўзгарувчининг ягона нусхаси бўлади. Амалда синфнинг статик берилганлари учун хотирадан жой ажратилади, ҳаттоки синфнинг бирорта объекти бўлмаса ҳам. Шу сабабли синф статик берилганини эълон қилиб қолмасдан, уни аниқлаш шарт. Масалан:


сlass Sinf
{
public:
Sinf();
static int Sanagich;//статик берилган–аъзо эълони
}
int Sinf::Sanagich=0; // статик берилган–аъзо эълони
Бу мисолда, гарчи Sanagich статик берилган – аъзо public бўлимида эълон қилинган ва унга синф объекти номини ишлатиш ёрдамида мурожаат қилиш мумкин.
Sinf sinf1;
Sinf1.Sanagich++;
Sinf sinf2;
Sinf2->Sanagich--;
Статик берилганлар – аъзоларга синф номи орқали мурожаат қилган маъқул бўлади.
Sinf::Sanagich++;
Бу ҳолат Sanagich статик берилган–аъзо барча синф объектлари учун ягона эканлигини таъкидлайди.
Агарда статик берилганлар ёпиқ деб эълон қилинган бўлса, уларга функциялар – аъзолар орқали мурожаат қилиш мумкин.
Умуман олганда статик берилганлар – аъзоларни ишлатишда қуйидаги таклифларни бериш мумкин:

  • статик берилганлар-аъзоларни бир нечта синф объектлари томонидан биргаликда ишлатиш учун аниқланг;

  • статик берилганлар-аъзоларини private, protected модификаторлар билан эълон қилиш орқали уларга мурожаатни чекланг.

Синфнинг статик берилган-аъзосини ишлатишга мисол.
сlass S;
{

Download 0.58 Mb.

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




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