CMap::Lookup
Recherche la valeur mappée à une clé donnée.
BOOL Lookup(
ARG_KEY key,
VALUE& rValue
) const;
Paramètres
ARG_KEY
Paramètre de modèle spécifiant le type de la valeur d' key .key
Spécifie la clé qui identifie l'élément à rechercher.VALEUR
Spécifie le type de la valeur à rechercher.rValue
Accepte la valeur regardée).
Valeur de retour
Une valeur différente de zéro si l'élément a été trouvé ; sinon 0.
Notes
Lookup utilise un algorithme de hachage pour rechercher rapidement l'élément de la table avec une clé qui correspond exactement à la clé spécifiée.
Exemple
CMap<int,int,CPoint,CPoint> myMap;
myMap.InitHashTable(257);
// Add 200 elements to the map.
for (int i = 0; i < 200; i++)
myMap[i] = CPoint(i, i);
// Remove the elements with even key values.
CPoint pt;
for (int i = 0; myMap.Lookup(i, pt); i += 2)
{
myMap.RemoveKey(i);
}
ASSERT(myMap.GetSize() == 100);
TRACE(_T("myMap with %d elements:\n"), myMap.GetCount());
POSITION pos = myMap.GetStartPosition();
int iKey;
CPoint ptVal;
while (pos != NULL)
{
myMap.GetNextAssoc(pos, iKey, ptVal);
TRACE(_T("\t[%d] = (%d,%d)\n"), iKey, ptVal.x, ptVal.y);
}
Configuration requise
Header: afxtempl.h