Ақпараттық технологияның қарқынды дамуна байланысты соңғы кездері программалауға деген қызығушылықтың арта түскені белгілі. Дк қолданудың ең негізгі облыстарының бірі бағдарламалау болып табылады



бет29/71
Дата04.10.2022
өлшемі1.36 Mb.
#461923
түріПрограмма
1   ...   25   26   27   28   29   30   31   32   ...   71
С тілінде программалау УМКД

Кластың статикалық мүшелерi


Кластың мүшелерi static модификаторымен жарияланады. Кластың статикалық мүшесi глобалды айнымалы немесе класс аймағында қол жетерлік функция ретінде қарастыруға болады.


Static модификаторымен жарияланған кластың мәлімет-мүшесі сол кластың барлық өкiлдерiмен бөлiнедi, өйткенi негiзiнен бұл айнымалыда бiр-ақ дана бар болады. Негізінде, кластың ешқандай да өкiлдерi жоқ болса да, статикалық мәлiмет-мүшелеріне жад бөлінеді. Сондықтан, класс статикалық мәлiмет-мүшелерін жариялап қана қоймай, оларды анықтау керек. Мысалы:
class AnyClass
{
public:
AnyClass();
//статикалық мәлімет-мүшені жариялауы static int count;
};
// статикалық мәлімет-мүшесін анықтау int AnyClass::count = 0;

Кластың Public тарауында жарияланған статикалық мәлімет-мүшеге объектінін атауын қолданып келесі конструкция арқылы қол жеткізуге болады:


<объект>.< мәлімет_мүше > немесе
< объектіге_сілтеме> - > < мәлімет_мүше >.

Қарастырылған констуркцияның орнына келесі шақыру формасын қолдану жақсырақ болады:




<класс_атауы>: : < мәлімет_мүше >.

Ол дұрысырақ болады, өйткенi ол барлық кластың жалғыз мәлімет_мүшесі екенін нақтырақ көрсетеді. Егер статикалық мәлімет_мүшелері жабық түрінде жарияланса, оларға қарапайым функция- мүшелері арқылы қол жеткізуге болады. Олардың қол жеткізу процессі басқа мәлiмет-мүшелеріне қол жеткізуден еш айырмашылығы жоқ, бiрақ ол үшiн кластың ең болмаса бiр объектiсін құру керек.


Жоғарыда айтылған бойынша келесi ұсыныстарды беруге болады:

  • кластың бiрнеше объектiлерінің мәлiметтерін бірге қолдану үшін статикалық мәлімет-мүшелерін қолданыңыз;

  • статикалық мәлiмет-мүшелеріне қол жеткізу мүмкіндігін protected немесе private тарауларында жариялау арқылы шектеңiз.

Кластың статикалық мәлiмет-мүшесін қолдануының мысалын қарастырайық:


#include class T
{
public:
T(){ObCount++;}
~T(){ObCount--;} static int ObCount;
//... private:
int x;
};
int Т::ObCount = 0; int main()
{
T* pOb = new Т[5];
cout « " Бар " « Т::ObCount « " Т түрі объектері \n"; delete[] рОb;
return 0;
}

Бұл мысалда статикалық мәлімет-мүшесі құрылған объектілерінің есебін жүргiзеді. Программаның нәтижесінде экранда келесі мәліметті аламыз: Т типті 5 объектісі болады.






Достарыңызбен бөлісу:
1   ...   25   26   27   28   29   30   31   32   ...   71




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет