Mavzu: Klass va funksiyalar shablonlari. Klass va funksiyalar shablonlarini dasturlash. Shablonlarning standart kutubxonasi (ShSK). ShSK-komponentalari Reja: - Funksiya shablonlar;
- Sinf (class) shablonlar
- C++ dasturlash tilida STL bilan tanishish;
- Konteynerlar tushunchasi;
- Iteratorlar algoritmlari tushunchasi;
.
Shablonlar (ing template) — ayrim parametrlarga (masalan: ma’lumot tiplariga, joriy qiymatlarga) bog’lamasdan umumlashgan (yoki qo’shma) algoritmlarni kodlash uchun mo’ljallangan C++ (va b.) dasturlash tillari vositasi. - Shablonlar (ing template) — ayrim parametrlarga (masalan: ma’lumot tiplariga, joriy qiymatlarga) bog’lamasdan umumlashgan (yoki qo’shma) algoritmlarni kodlash uchun mo’ljallangan C++ (va b.) dasturlash tillari vositasi.
- C++ da shablon funksiya va sinflar yaratish imkoniyati mavjud.
- Shablonlar parametrlashgan funksiya va sinflar yaratish imkoniyatini beradi.
- Parametrlar (mavjud tiplardan tashkil topgan) ixtiyoriy qiymatlar yoki o’zgaruvchilar bo’lishi mumkin.
1)
2)
Masalan: class Class_1{ int m1; int A[20]; ... }; yaratilgan bo’lsin. Endi bizga 30 ta elementli massiv va haqiqiy turdan iborat sinf kerak bo’lsin
template <int m1_uzunlik, typename tip > class Class_1{ tip bizning_tip; m1 A1 [m1_uzunlik]; ... };
U holda 1- hol uchun: Class1 < 20, int > Nomi1; 2- hol uchun: Class1< 30, double > Nomi2; - Birinchidan: Kompilyatorlar har bir parameterlar uchun alohida funksiya yoki sinflar ekzemplyar yaratilishi;
- Ikkinchian: oddiy funksiyalarga qaraganda hatolikni topish murakkabligida;
- Uchinchidan: Kompiliatsiya vaqtining oshishi, fayl hajmining oshishi (bitta shablon bir nechat faylga joriy etilgan va kompilatsiyalangan bo’lishi mumkin)
Do'stlaringiz bilan baham: |