Kurs C++
Szablony funkcji
[lekcja] Co to są szablony funkcji i jak z nich korzystać.Wstęp
W tej i dwóch następnych lekcjach opiszę szablony. Dzięki nim możemy napisać program, bez początkowego uwzględniania typów. Jest wykorzystywany w metaprogramowaniu. Oprócz języka C++ można go użyć w języku D. Aby użyć szablonu, trzeba najpierw zadeklarować jego instancję.
W dzisiejszej lekcji omówimy tylko szablony funkcji i po co w ogóle są.
Deklaracja Szablonu
Przed każdą funkcją, strukturą czy klasą musimy dokonać konkretyzacji szablonu(tworzenie instancji - konkretyzacja to ten proces). Każdą konkretyzację zaczynamy od słówka
template.
Przykład deklaracji szablonu:
template < class klasa, int ilosc >
Jak można się domyślić, deklarujemy w szablonie typ zwracanej zmiennej i ilość danego elementu. To tak dla przykładu.
Szablony funkcji - teoria i praktyka
Zapodam kod, w komentarzach wyjaśnię:
#include <iostream>
#include <cstdio>
using namespace std;
template < class klasa >
klasa pierwiastek( klasa liczba )
{
klasa liczba_pierwiastka =( liczba * liczba );
return liczba_pierwiastka;
}
template < class klasa >
klasa a_plus_b_minus_c( klasa a, klasa b, klasa c )
{
klasa wynik =( a + b - c );
return wynik;
}
int main()
{
double liczba1 = pierwiastek < double >( 3.9 );
cout << liczba1 << endl;
int liczba2 = a_plus_b_minus_c < int >( 9, 2, 1 );
cout << liczba2 << endl;
getchar();
}
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.