CAtlMap sınıfı
Bu sınıf oluşturma ve yönetme harita nesnesi yöntemleri sağlar.
template<
typename K,
typename V,
class KTraits = CElementTraits< K >,
class VTraits = CElementTraits< V >
>
class CAtlMap
Parametreler
K
Anahtar öğe türü.V
Değer öğesi türü.KTraits
Anahtar öğeleri taşımak veya kopyalamak için kullanılan kod.Bkz: CElementTraits sınıfı daha fazla ayrıntı için.VTraits
Kopyalamak veya değer öğeleri taşımak için kullanılan kod.
Üyeler
TypeDef genel
Ad |
Description |
---|---|
Bir anahtar giriş bağımsız değişken olarak iletildiğinde kullanılan türü |
|
Bir anahtar çıktı argüman olarak döndüğünde kullanılan türü. |
|
Giriş bağımsız değişken olarak bir değer iletildiğinde kullanılan türü. |
|
Çıkış bağımsız değişken olarak bir değer iletildiğinde kullanılan türü. |
Public sınıfları
Ad |
Description |
---|---|
Anahtar ve değer öğelerini içeren bir sınıf. |
CPair veri üyeleri
Ad |
Description |
---|---|
Anahtar öğesi depolamak veri üyesi. |
|
Değer öğesi depolamak veri üyesi. |
Ortak Oluşturucusu
Ad |
Description |
---|---|
Oluşturucu. |
|
Yıkıcı. |
Public yöntemler
Ad |
Description |
---|---|
Neden bir onaylama işlemi için bu yöntemi çağırın CAtlMap geçerli değil. |
|
Otomatik olarak rehashing devre dışı bırakmak için bu yöntemi çağırın CAtlMap nesnesi. |
|
Otomatik olarak rehashing sağlamak için bu yöntemi çağırın CAtlMap nesnesi. |
|
Haritası'nda belirtilen konumdaki öğeyi döndürmek için bu yöntemi çağırın. |
|
Eşlemesindeki öğelerin sayısını almak için bu yöntemi çağırın. |
|
Harita 's karma tablo depo sayısını belirlemek için bu yöntemi çağırın. |
|
Belirtilen konumda depolanan anahtar almak için bu yöntemi çağırın CAtlMap nesnesi. |
|
İşaretçi çifti depolanmış bir sonraki öğeye elde etmek için bu yöntemi çağırın CAtlMap nesnesi. |
|
Sonraki öğe dolaşmak için alır. |
|
Sonraki anahtar almak için bu yöntemi çağırın CAtlMap nesnesi. |
|
Sonraki değeri elde etmek için bu yöntemi çağırın CAtlMap nesnesi. |
|
Harita yineleme başlatmak için bu yöntemi çağırın. |
|
Belirli bir konumda saklanan değeri almak için bu yöntemi çağırın CAtlMap nesnesi. |
|
Karma Tablo başlatmak için bu yöntemi çağırın. |
|
Boş harita nesnesi için test etmek için bu yöntemi çağırın. |
|
Anahtarlar veya değerler aramak için bu yöntemi çağırın CAtlMap nesnesi. |
|
Rehash için bu yöntemi çağırın CAtlMap nesnesi. |
|
Gelen tüm öğeleri kaldırmak için bu yöntemi çağırın CAtlMap nesnesi. |
|
Belirtilen konumda öğe kaldırmak için bu yöntemi çağırın CAtlMap nesnesi. |
|
Bir öğeden kaldırmak için bu yöntemi çağırın CAtlMap verilen anahtar nesne. |
|
Eşlemenin içine öğe çifti eklemek için bu yöntemi çağırın. |
|
En iyi yükü belirlemek için bu yöntemi çağırın CAtlMap nesnesi. |
|
Belirli bir konumda depolanan değeri değiştirmek için bu yöntemi çağırın CAtlMap nesnesi. |
Ortak İşleçler
Ad |
Description |
---|---|
Yeni bir öğe ekler veya değiştirir CAtlMap. |
Notlar
CAtlMapSıralanmamış bir dizi anahtar öğeleri ve bunların ilişkili değerleri yönetme, verilen herhangi bir tür eşleme dizisi için destek sağlar.Büyük miktarda verimli bir şekilde saklanır ve alınan veri veren bir karma algoritma kullanarak öğeleri (bir anahtar ve bir değerden oluşan) depolanır.
KTraits Ve VTraits öğeleri taşımak veya kopyalamak için gereken herhangi bir ek kod içeren niteliği sınıflarına parametreleridir.
Alternatif CAtlMap tarafından sunulan CRBMap sınıfı.CRBMapAyrıca anahtar/değer çiftleri olarak depolanır, ancak farklı performans özelliklerini sergiler.Bir öğe eklemek için geçen süreyi bir anahtarı arayın ya da bir anahtarından silin bir CRBMap nesnedir sırasını log(n), burada n öğe sayısı.İçin CAtlMap, en kötü durum senaryolarını sırasını olabilir, ancak tüm bu işlemleri genellikle bir sabit zaman alabilir n.Bu nedenle, normal bir durum içinde CAtlMap daha hızlıdır.
Arasındaki diğer bir fark CRBMap ve CAtlMap depolanmış öğeleri boyunca yineleme belirgin olur.İçinde bir CRBMap, öğeleri sıralanmış olarak ziyaret etmiş.İçinde bir CAtlMapöğeleri değil olarak sıralanır ve hiç sipariş sonuçlandı.
Az sayıda öğe depolanması gerektiğinde kullanmayı düşünün CSimpleMap bunun yerine sınıf.
Daha fazla bilgi için bkz: atl koleksiyon sýnýflarýný.
Gereksinimler
Başlık: atlcoll.h