C++ Dersi: Nesne Tabanlı Programlama 2. Baskı ³ Bölüm 15: Şablonlar
İçerik 15.1 Fonksiyon Şablonu 15.2 Sınıf Şablonu 15.3 Şablon Parametreleri 15.4 Sınıf Şablon ÖzelleşHrme Çözümlü Sorular 2
Hedefler Şablon kavramının kullanım alanını açıklama Verilen fonksiyonun farklı veri Hpindeki parametrelerle çalışması için fonksiyon şablonunu yazma Verilen fonksiyon şablonlarına yükleme yapma Sınıf şablonu tanımlama Sınıf şablon özelleşhrme tanımı yapma Verilen fonksiyon tanımlamalarında hangi fonksiyon şablonunun kullanılacağını gösterme 3
Şablonlar İng. Templates Şablonlar aynı kod parçasını, farklı veri Hpleri ile kullanılabilmemizi sağlayan bir yöntemdir. fonksiyon şablonları sınıf şablonları 4
15.1 Fonksiyon Şablonu İng. Func5on template Aynı fonksiyonun farklı Hpteki parametrelerle çalışmasını fonksiyon şablonu kullanarak sağlayabiliriz. template <class ŞablonParametresi> ŞablonParametresi Fonksiyonİsmi (Parametre Listesi) {... } Şablonlarda parametrelerin Hplerini belirtmeyip yerine şablon parametresini veri Hpi olarak kullanırız 5
15.1 Fonksiyon Şablonu... Şablon parametresi 6
15.1 Fonksiyon Şablonu... Fonksiyon Şablonlarına Yükleme de yapabiliriz. 7
15.2 Sınıf Şablonu İng. Class templates Sınıfa ait veri ve fonksiyon üyelerinin farklı veri Hpleri ile kullanımını sağlar. Bir sınıf şablonu herhangi bir sınıf tanımı gibi yapılır. Ancak sınıf başlığından hemen önce, fonksiyon şablonlarında olduğu gibi şablon ve şablon parametreleri ile tanımlanır. template <class ŞablonParametresi> class Sınıfİsmi{...} 8
15.2 Sınıf Şablonu... 9
15.3 Şablon Parametreleri Şablon parametreleri bir veya daha fazla olabilir. Birden fazla şablon parametresi, (virgül) işareh ile aşağıda gösterildiği gibi tanımlanır. template <class T1,class T2,... > 10
15.3 Şablon Parametreleri... 11
15.3 Şablon Parametreleri... 12
15.4 Sınıf Şablon ÖzelleşJrme İng. Class template specializa5on Şablonlar, aynı kod parçasının farklı veri Hpleri için kullanılabilmesine olanak sağlar. Ancak şablonların kullanımı sırasında kimi zaman farklı veri Hpleri için kodun bir bölümünde veri Hpine göre değişiklik yapılması gerekebilir. Bu durumlarda sınıf şablon özelleş5rme yönteminden yararlanılır. 13
15.4 Sınıf Şablon ÖzelleşJrme... 14
Çözümlü Sorular Soru 15
Çözümlü Sorular Cevap 16
Çözümlü Sorular Soru 17
Çözümlü Sorular Soru 18
Çözümlü Sorular Cevap 19
Çözümlü Sorular Cevap 20
Çözümlü Sorular Cevap 21
Çözümlü Sorular Cevap 22