Bu hızlı eğitimde, C'de harita üzerinde nasıl yineleme yapılacağını göreceğiz++.
C'de harita üzerinde yineleme yapmanın birden çok yolu vardır++. C++'ın daha yeni sürümleriyle, C'de harita üzerinde yineleme yapmanın daha gelişmiş yolları vardır++.
tek tek üzerinden geçelim.
stp::map ile for döngüsü kullanma
adında bir harita oluşturduk ülkeSermayeHarita
ve buna anahtar/değer çiftleri eklendi.
#Dahil etmek
#Dahil etmek
Çıktı:
Çin: Pekin
Fransa Paris
Hindistan: Delhi
Nepal: Katmandu
Gördüğünüz gibi, for döngüsünü kullanarak country:capital(key:value) yazdırdık.
Dikkat ederseniz kullandık Oto
okunabilirlik nedeniyle harita yineleyici için tür belirteci. Kullanabilirsiniz harita::yineleyici
açıkçası da.
Not: Çıktıyı görürseniz, artan düzende tuşlara göre sıralanmıştır. Bunun nedeni, std::map'in sağlanan Karşılaştırıcı (sürüm C++11 ve sonrası) ile sıralanmış bir ilişkisel kapsayıcı olmasıdır. Herhangi bir karşılaştırıcı sağlamadığımız için, C++ dize için varsayılan Karşılaştırıcıyı kullandı.
stp::map ile while döngüsünü kullanma
for döngüsü yerine while döngüsünü de kullanabiliriz.
#Dahil etmek
#Dahil etmek
Çıktı:
Çin: Pekin
Fransa Paris
Hindistan: Delhi
Nepal: Katmandu
Döngü tabanlı Aralık kullanma (C++11 sürümünden itibaren)
C++ 11 sürümünü kullanıyorsanız, bu, C'deki harita üzerinde yineleme yapmanın en zarif yoludur++. Geleneksel kübik döngülerden kaçınabilir ve bunun yerine bunu kullanabilirsiniz.
#Dahil etmek
#Dahil etmek
Çıktı:
Çin: Pekin
Fransa Paris
Hindistan: Delhi
Nepal: Katmandu
Anahtar/değer çiftleriyle aralık tabanlı for döngüsü kullanma (C++17 sürümünden itibaren)
Bu sürüm c++17'den itibaren desteklenir ve harita üzerinde yineleme için daha esnek bir yol sağlar. Daha da okunabilir bir çözüm sağlayan haritadaki anahtar/değer çiftlerine açıkça erişebilirsiniz.
#Dahil etmek
#Dahil etmek
Çıktı:
Çin: Pekin
Fransa Paris
Hindistan: Delhi
Nepal: Katmandu
Hepsi C'deki harita üzerinde nasıl yineleneceği ile ilgili++. mutlu kodlama!