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



Pdf көрінісі
бет202/465
Дата09.01.2023
өлшемі3,66 Mb.
#60709
түріПрограмма
1   ...   198   199   200   201   202   203   204   205   ...   465
Байланысты:
аибм сплюс

Абстрактылы кластар
Кем дегенде бір таза виртуалды əдісі бар класс абстрактылы деп атала-
ды. Абстрактылы кластар туынды кластарда нақтылауды талап ететін жалпы 
ұғымдарды тағайындау үшін қажет. Абстрактылы класс басқа кластар үшін 
тек базалық класс ретінде қолданыла алады – абстрактылы класс объектілерін 
құруға болмайды, өйткені таза виртуалды əдісті тікелей немесе жанамалы 
түрде шақыру олардың орындалуы кезіндегі қателіктерге алып келеді.


225
Абстрактылы класты анықтау кезінде келесі жағдайларды ескеру керек:
□ абстрактылы класты нақты түрде типтерді түрлендіру кезінде параметр 
типін жəне функцияның қайтаратын мəнінің типін сипаттау үшін қолдануға 
болмайды;
□ егер инициалдау кезінде уақытша объект құрудың қажеті жоқ болса, 
абстрактылы класқа сілтемелерді жəне нұсқауыштарды жариялауға рұқсат 
берілген;
□ егер абстрактылы кластан туындаған жаңа класс барлық таза виртуалды 
функцияларды анықтамайтын болса, ол да абстрактылы класс болып табылады.
Сонымен, параметрі абстрактылы класқа нұсқауыш болып табылатын 
функция құруға болады. Программаның орындалу кезінде бұл параметрдің 
орнына кез келген туынды кластың объектісіне нұсқауышты беруге болады. 
Бұл бір иерархия көлемінде кез келген типтегі объектімен жұмыс істейтін по-
лиморфты функцияларды құруға мүмкіндік береді. 
Көптік мұралау
Көптік мұралау кластың бірнеше базалық класы бар екендігін білдіреді. 
Егер базалық кластарда атаулары бірдей элементтер бар болса, онда иденти-
фикаторлар қайшылығы туындауы мүмкін, оны көріну аймағына қол жеткізу 
операциясының көмегімен жоюға болады:
class monstr{
public: int get_health();
...
};
class hero{
public: int get_health();
...


Достарыңызбен бөлісу:
1   ...   198   199   200   201   202   203   204   205   ...   465




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

    Басты бет