Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»


health = he; ammo = am; skin = red; name = 0



Pdf көрінісі
бет173/465
Дата23.05.2022
өлшемі3.66 Mb.
#458577
түріПрограмма
1   ...   169   170   171   172   173   174   175   176   ...   465
pavlovskaia-jogargy-dengeili

health = he; ammo = am; skin = red; name = 0;
}
//------------------------------------ 
monstr::monstr(color sk){ 
switch (sk){
case red: health = 100; ammo = 10; skin = red; 
name = 0; break;
case green: health = 100; ammo = 20; skin = green; 
name = 0; break;
case blue: health = 100; ammo = 40; skin = blue;
name = 0; break;
 
}
}
//------------------------------------ 
monstr::monstr(char * nam){
name = new char [strlen(nam) + 1];
// Нөл-символды сақтау үшін тіркес ұзындығына 1 қосылады 
strcpy(name, nam);
health = 100; 
ammo = 10; skin = red;
}
...
//------------------------------------ 
monstr * m = new monstr ("Ork"); 
monstr Green (green);


199
Жоғарыда көрсетілген конструкторлардың біріншісі келісім бойынша 
құрылған конструктор болып табылады, себебі оны параметрлерсіз шақыруға 
болады. Енді
monstr 
класының объектілерін əртүрлі тəсілдермен инициалдауға 
болады, қажетті конструктор жақшалар ішіндегі мəндер тізіміне байланысты 
шақырылады. Бірнеше конструкторды бергенде асыра жүктелген функция-
ларды жазу кезінде қолданылатын ережелер сақталуы тиіс – компилятордың 
қажетті нұсқаны тану мүмкіндігі болуы керек. 
ЕСКЕРТУ 
Конструкторларды ғана емес, сонымен қатар кластың басқа да əдістерін асыра 
жүктеуге болады.
Конструктордағы өрістерді инициалдаудың тағы да бір тəсілі бар 
(жоғарыдағы программада қолданылған өрістерге формалды параметрлер 
мəндерін меншіктеуден басқа) – тақырып пен конструктор тұлғасының 
аралығындағы қос нүктеден кейін орналасқан инициализаторлар тізімінің 
көмегімен:


Достарыңызбен бөлісу:
1   ...   169   170   171   172   173   174   175   176   ...   465




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

    Басты бет