C# dictionnaire vs utilisation des listes de

J'avais deux questions. Je me demandais si il est facile de classe en C# bibliothèque qui stocke des paires de valeurs au lieu d'un seul, de sorte que je peux stocker une classe et d'un entier dans le même nœud de la liste. Je pense que le plus simple est de faire juste un conteneur de classe, mais comme c'est du travail supplémentaire à chaque fois. Je voulais savoir si je dois le faire ou pas. Je sais que dans les versions ultérieures de .NET ( je suis en utilisant 3.5) qu'il y a des tuples que je peux stocker, mais qui n'est pas disponible pour moi.

Je suppose que la plus grande question est de savoir quelles sont la mémoire inconvénients de l'utilisation d'un dictionnaire pour stocker la classe integer carte, même si je n'ai pas besoin d'un accès en O(1) et peut se permettre de simplement rechercher dans la liste? Quelle est la taille minimale de la table de hachage? dois-je simplement faire la classe wrapper-je besoin?

  • Pas une classe mais une structure (struct): KeyValuePair. Il y a aussi Tuple (qui est une classe).