CodeBlanks Logo Icon CodeBlanks

Birden çok tür parametresi

template<typename T, typename U> ile birden çok türü öğrenirsin.

Birden çok tür parametresi

Bir şablon, birden çok tür parametresi alabilir. template <typename T, typename U> struct Pair { T first; U second; }; bildirimi iki tür parametresi tanımlar. Türler virgülle ayrılır.

Örnek: Pair<int, double> p; ile first int, second double olur. p.first = 3; p.second = 3.14; ile üyeler ayarlanır. Tür sırası bildirim sırasıyla aynıdır: ilk tür T'ye, ikinci tür U'ya karşılık gelir. STL'in std::pair ve std::map'i bu deseni kullanır.

Pair kullanımı

Pair örneği oluşturma: Pair<int, double> p;. Üyelere doğrudan erişilir: p.first = 3; p.second = 3.14;. Tür sırası bildirimle aynı olmalıdır.

Yanlış sıra: Pair<double, int> p; p.first = 3.14; p.second = 3; — burada first double, second int olur. Türler yer değiştirir. Hangi türün hangi üyeye karşılık geldiğini bildirimden okursun. std::pair, STL algoritmalarında anahtar-değer çifti olarak sıkça kullanılır.

Uygulama Pair şablonunu yaz

template <typename T, typename U> struct Pair yaz. İçinde T first; ve U second; olsun. main içinde Pair<int, double> p;, p.first = 3;, std::cout << p.first << std::endl; yaz.

Başlangıç kodu

main.cpp
#include <iostream>

// Pair şablonunu yaz: T first, U second

int main() {
    // Pair örneği oluştur ve first yazdır
    return 0;
}

Örnek çözüm

main.cpp
#include <iostream>

template <typename T, typename U>
struct Pair {
    T first;
    U second;
};

int main() {
    Pair<int, double> p;
    p.first = 3;
    p.second = 3.14;
    std::cout << p.first << std::endl;
    return 0;
}

Beklenen çıktı

3

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Pair<int, double> kaç tür parametresi alır?

main.cpp
template <typename T, typename U> struct Pair;
  • Sıfır
  • Bir
  • Üç
  • İki Doğru cevap

Açıklama: Pair<int, double> iki tür parametresi alır: T ve U.

2 Pair bildirimini tamamla

Soru
Pair<int, ____> p;
Cevap
Pair<int, double> p;

Açıklama: Pair<int, double> p; second üyesi double olur.

3 Parçayı rolüne eşle

Kavram Anlamı
typename T, typename U İki tür parametresi
T first İlk türün üyesi
U second İkinci türün üyesi
Pair<int, double> Örnek oluşturma

Orta seviye bölümündeki tüm dersler