Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zapewnia bezpieczną dla typów "otokę" dla obiektów klas CMapPtrToPtrwskaźnik-mapa, , CMapPtrToWordCMapWordToPtri CMapStringToPtr.
Składnia
template<class BASE_CLASS, class KEY, class VALUE>
class CTypedPtrMap : public BASE_CLASS
Parametry
BASE_CLASS
Klasa bazowa typizowanej klasy mapy wskaźnika; musi być klasą mapy wskaźnika (CMapPtrToPtr, CMapPtrToWord, CMapWordToPtrlub CMapStringToPtr).
KLUCZ
Klasa obiektu używana jako klucz do mapy.
WARTOŚĆ
Klasa obiektu przechowywanego na mapie.
Elementy członkowskie
Metody publiczne
| Nazwa/nazwisko | opis |
|---|---|
| CTypedPtrMap::GetNextAssoc | Pobiera następny element do iteracji. |
| CTypedPtrMap::Lookup | Zwraca obiekt KEY na podstawie .VALUE |
| CTypedPtrMap::RemoveKey | Usuwa element określony przez klucz. |
| CTypedPtrMap::SetAt | Wstawia element do mapy; zastępuje istniejący element, jeśli zostanie znaleziony pasujący klucz. |
Operatory publiczne
| Nazwa/nazwisko | opis |
|---|---|
| CTypedPtrMap::operator [ ] | Wstawia element do mapy. |
Uwagi
W przypadku korzystania z programu CTypedPtrMapfunkcja sprawdzania typów języka C++ pomaga wyeliminować błędy spowodowane niezgodnością typów wskaźników.
Ponieważ wszystkie CTypedPtrMap funkcje są wbudowane, użycie tego szablonu nie wpływa znacząco na rozmiar lub szybkość kodu.
Aby uzyskać więcej informacji na temat korzystania z programu CTypedPtrMap, zobacz artykuły Kolekcje i Klasy oparte na szablonach.
Hierarchia dziedziczenia
BASE_CLASS
CTypedPtrMap
Wymagania
Nagłówek: afxtempl.h
CTypedPtrMap::GetNextAssoc
Pobiera element mapy w rNextPositionlokalizacji , a następnie aktualizuje rNextPosition , aby odwołać się do następnego elementu na mapie.
void GetNextAssoc(
POSITION& rPosition,
KEY& rKey,
VALUE& rValue) const;
Parametry
Położenie rPosition
Określa odwołanie do wartości POSITION zwróconej przez poprzednie GetNextAssoc lub BASE_CLASS::GetStartPosition wywołania.
KLUCZ
Parametr szablonu określający typ kluczy mapy.
rKey
Określa zwrócony klucz pobranego elementu.
WARTOŚĆ
Parametr szablonu określający typ wartości mapy.
rValue
Określa zwracaną wartość pobranego elementu.
Uwagi
Ta funkcja jest najbardziej przydatna do iterowania wszystkich elementów na mapie. Należy pamiętać, że sekwencja pozycji nie musi być taka sama jak sekwencja wartości klucza.
Jeśli pobrany element jest ostatnim elementem na mapie, nowa wartość parametru rNextPosition ma wartość NULL.
Ta funkcja śródliniowa wywołuje metodę BASE_CLASS::GetNextAssoc.
CTypedPtrMap::Lookup
Lookup używa algorytmu tworzenia skrótów, aby szybko znaleźć element mapy z kluczem, który dokładnie pasuje.
BOOL Lookup(BASE_CLASS ::BASE_ARG_KEY key, VALUE& rValue) const;
Parametry
BASE_CLASS
Parametr szablonu określający klasę bazową klasy tej mapy.
klucz
Klucz elementu do wyszukania.
WARTOŚĆ
Parametr szablonu określający typ wartości przechowywanych na tej mapie.
rValue
Określa zwracaną wartość pobranego elementu.
Wartość zwracana
Niezero, jeśli element został znaleziony; w przeciwnym razie 0.
Uwagi
Ta funkcja śródliniowa wywołuje metodę BASE_CLASS::Lookup.
CTypedPtrMap::operator [ ]
Ten operator może być używany tylko po lewej stronie instrukcji przypisania (l-value).
VALUE& operator[ ](base_class ::base_arg_key key);
Parametry
WARTOŚĆ
Parametr szablonu określający typ wartości przechowywanych na tej mapie.
BASE_CLASS
Parametr szablonu określający klasę bazową klasy tej mapy.
klucz
Klucz elementu do wyszukania lub utworzenia na mapie.
Uwagi
Jeśli nie ma elementu mapy z określonym kluczem, zostanie utworzony nowy element. Nie ma "prawej strony" (r-value) równoważnej temu operatorowi, ponieważ istnieje możliwość, że klucz może nie zostać znaleziony na mapie. Użyj funkcji składowej do pobierania Lookup elementów.
CTypedPtrMap::RemoveKey
Ta funkcja składowa wywołuje metodę BASE_CLASS::RemoveKey.
BOOL RemoveKey(KEY key);
Parametry
KLUCZ
Parametr szablonu określający typ kluczy mapy.
klucz
Klucz do usunięcia elementu.
Wartość zwracana
Nonzero, jeśli wpis został znaleziony i pomyślnie usunięty; w przeciwnym razie 0.
Uwagi
Aby uzyskać bardziej szczegółowe uwagi, zobacz CMapStringToOb::RemoveKey.
CTypedPtrMap::SetAt
Ta funkcja składowa wywołuje metodę BASE_CLASS::SetAt.
void SetAt(KEY key, VALUE newValue);
Parametry
KLUCZ
Parametr szablonu określający typ kluczy mapy.
klucz
Określa wartość klucza newValue.
newValue
Określa wskaźnik obiektu, który jest wartością nowego elementu.
Uwagi
Aby uzyskać bardziej szczegółowe uwagi, zobacz CMapStringToOb::SetAt.
Zobacz też
Przykład MFC COLLECT
Wykres hierarchii
Klasa CMapPtrToPtr
Klasa CMapPtrToWord
Klasa CMapWordToPtr
Klasa CMapStringToPtr