Quelle est la signification de tableau associatif?

Je suis en train de lire Le C++ Standard Library: Un Tutoriel et ouvrage de Référence. Dans la carte exemple:

   typedef map<string,float> StringFloatMap;
   StringFloatMap coll;

   //insert some elements into the collection
   coll["VAT"] = 0.15;
   coll["Pi"] = 3.1415;
   coll["an arbitrary number"] = 4983.223;
   coll["Null"] = 0;

L'auteur de dire:

Ici, l'index est utilisé comme clé et peut avoir n'importe quel type. C'est l'interface d'un tableau associatif. Un tableau associatif est un tableau dont l'index peut être d'une type arbitraire.

Un pouvait m'expliquer, ce que type arbitraire signifie dans le tableau associatif?

Il signifie aucun. Vous pouvez créer un std::map qui utilise int clés, std::string (comme dans votre exemple), ou même des instances de classes.
À partir de dictionary.com arbitrary: not assigned a specific value, fondamentalement, l'indice peut être n'importe quoi; une chaîne de caractères, un entier, un objet...
Je suppose/attendre/espérer que Josuttis est allé expliquer les exigences imposées sur ce "arbitraire" type?

OriginalL'auteur Milad Khajavi | 2013-03-06