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



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

Кластардың шаблондарын құру
Кластың шаблонын құруды мысал арқылы қарастырайық. «Сызықтық 
тізімдер» (124 б.) бөлімінде екібайланысты тізім сипатталып, онымен жұмыс 
істеу алгоритмдері көрсетілген болатын. Тізімдер мəліметтерді ұйымдастыру 
үшін жиі қолданылатын болғандықтан, тізімді класс түрінде сипаттаған 
ыңғайлы, ал əртүрлі типтегі мəліметтерді сақтау керек болғандықтан, бұл 
класс параметрленген болуы тиіс. 
Алдымен «тізім» класының параметрленбеген нұсқасын қарастырайық. 
Тізім нұсқауыштар көмегімен өзара байланысқан түйіндерден тұрады. 
Əрбір түйін тізім кілті болып табылатын бүтін санды сақтайды. Тізімнің бір 
түйінін бейнелейтін қосымша класты сипаттайық:
class Node{ 
public:
int d; // Мəліметтер
Node *next; // Келесі түйінге нұсқауыш 
Node *prev; // Алдыңғы түйінге нұсқауыш 
Node(int dat = 0){ // Конструктор
d = dat; next = 0; prev =0; 
}
};


229
Бұл класс тізімді бейнелейтін кластың ішінде сипатталатын болғандықтан, 
ішкі кластан қол жеткізуді жеңілдету мақсатында өрістер қолжетімді (
public

етіп құрылған. Бұл қол жеткізу функциясының көмегіне жүгінбеуге жəне 
өрістерді өзгертпеуге мүмкіндік береді. Тізім класын 
List
деп атайық:
class List{ 
class Node{
 
...
};
Node *pbeg, *pend; // Тізімнің басына жəне соңына 
// нұсқауыштар 
public:
List(){ pbeg = 0; pend = 0;} // Конструктор
~List(); // Деструктор
void add(int d); 
// Түйінді тізім соңына қосу
Node * fi nd(int i); // Түйінді кілті бойынша іздеу
// d түйінін key кілті бар түйіннен кейін 
// кірістіру:


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




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

    Басты бет