template< typename T > void sort( T array[], int size ); - sort shabloni yaratildi lekin aniqlanmadi
template< typename T >
template< typename T >
void sort( T array[], int size ) // e’lon qilish va aniqlash
{
T t;
for (int i = 0; i < size - 1; i++)
for (int j = size - 1; j > i; j--)
if (array[j] < array[j-1])
{
t = array[j];
array[j] = array[j-1];
array[j-1] = t;
}
}
template< typename T >
template< typename T >
T min( T a, T b )
{
return a < b ? a : b;
}
Funksiyani chaqirish uchun
min( 1, 2 );
Shablon f-yaga oid misol:
Sinf shablon
template< class T >
class List
{
/* ... */
public:
void Add( const T& Element );
bool Find( const T& Element );
/* ... */
};
Shablonlardan foydalanish
List li;
List ls;
li.Add( 17 );
ls.Add( "Hello!" );
Shablonlarga asoslangan umumlashgan dasturlashga misol Stepanov va Target tomonidan yaratilgan va C++ tili standartiga kiritilgan STL (Standart Template Library) kutubxonasidir. Kutubxona yadrosi uchta elementdan iborat:
Shablonlarga asoslangan umumlashgan dasturlashga misol Stepanov va Target tomonidan yaratilgan va C++ tili standartiga kiritilgan STL (Standart Template Library) kutubxonasidir. Kutubxona yadrosi uchta elementdan iborat:
Konteynerlar,
Algoritmlar
Iteratorlar.
Konteynerlar — bu boshqa elementlarni saqlash uchun mo‘ljallangan sinflar shablonlaridir. Konteynerlar asosiy xususiyati shundaki ular ixtiyoriy tipdagi elementlarni o‘zida saqlash uchun mo‘ljallangan.
Konteynerlar asosiy va hosila konteynerlarga ajratiladi.