Mavzu: oydning afzalliklari va kamchiliklari Reja: oydning afzalliklari oydning kamchiliklari



Download 1,56 Mb.
bet11/19
Sana23.09.2022
Hajmi1,56 Mb.
#849823
1   ...   7   8   9   10   11   12   13   14   ...   19
Bog'liq
Maruza

template < typename ElementType >
void out_array ( const ElementType * arr , size_t arrSize )
{
for ( size_t i = 0 ; i < arrSize ; ++i )
std::cout << arr[i] << ' ' ;
std::cout << std::endl ;
}
int main ()
{
const size_t n = 5 ;
int arr1 [ n ] = { 10 , 5 , 7 , 3 , 4 } ;
double arr2 [ n ] = { 7.62 , 5.56 , 38.0 , 56.0 , 9.0 } ;
std::cout << "Source arrays:\n" ;
out_array ( arr1 , n ) ;//Компилятор сам выведет параметр шаблона исходя из первого аргумента функции
out_array ( arr2 , n ) ;


bubbleSort ( arr1 , n ) ;
bubbleSort ( arr2 , n ) ;


std::cout << "Sorted arrays:\n" ;
out_array ( arr1 , n ) ;
out_array ( arr2 , n ) ;
}
Dastur natijasi:
Manba massivlari: 10 5 7 3 4 7.62 5.56 38 56 9 Saralangan massivlar: 3 4 5 7 10 5.56 7.62 9 38 56
Ko'rib turganingizdek, kompilyator o'zi kerakli tur uchun out_array hosil qiladi. Bundan tashqari, bubbleSort funktsiyasini o'zi ishlab chiqaradi. Va bubbleSort -da biz my_swap shablon funktsiyasidan foydalanamiz, kompilyator o'z kodini avtomatik ravishda ishlab chiqaradi . Qulay, shunday emasmi?

Shablonli darslar bilan tanishish


Nafaqat funktsiyalar shablonga aylanishi mumkin. Keling, shablonli darslarni ko'rib chiqaylik. Oddiy misol bilan boshlaylik. Biz oldingi kodimizga qatorni maksimal va minimalini qidiradigan funktsiyani qo'shamiz. Funktsiyani yaratishda biz muammoga duch kelamiz - ikkita ko'rsatgichni qanday qaytarish mumkin? Siz ularni parametr sifatida funktsiyaga o'tkazishingiz yoki ikkita ko'rsatgichni o'z ichiga olgan ob'ektni qaytarishingiz mumkin. Qaytish qiymatlari ko'p bo'lgan birinchi variant, funktsiyani parametrlar bilan to'ldirishga olib keladi, shuning uchun men tuzilishni taklif qilaman:
struct my_pointer_pair
{
тип * first ;
тип * second ;
} ;
Ko'rsatkichlar qanday bo'ladi? Siz ularni bekor qilishingiz mumkin *, lekin keyin siz ularni doimo kerakli turga o'tkazishingiz kerak va kod "Doshirak" ga o'xshaydi. Ammo, agar biz bu tuzilmani qozonga aylantirsak nima bo'ladi? Kel urinib ko'ramiz:

Download 1,56 Mb.

Do'stlaringiz bilan baham:
1   ...   7   8   9   10   11   12   13   14   ...   19




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish