Je me demande si vous connaissez un type de conteneur de mappes associatives C++ sur lequel je peux effectuer plusieurs recherches de clés. La carte doit avoir des recherches à temps constant mais je m'en fous si elle est ordonnée ou non ordonnée. Ça doit juste être rapide. Par exemple, je veux stocker un groupe d'objets std :: vector dans une carte avec un entier et un void * comme clés de recherche. L'int et le void * doivent correspondre pour que mon vecteur soit récupéré. Est-ce que quelque chose comme ça existe déjà? Ou vais-je devoir rouler le mien. Si oui, des suggestions? J'ai essayé de stocker un boost :: unordered_map dans un autre boost :: unordered_map, mais je n'ai pas encore eu de succès avec cette méthode. Peut-être que je vais continuer Pershing cette méthode s'il n'y a pas de façon plus simple. Merci!Mappe de touches multiples en C++
6
A
Répondre
4
La recherche constante nécessite une carte de hachage. Vous pouvez utiliser un boost::unordered_map (ou tr1). La clé serait le combined hash de l'int et le pointeur vide.
0
Vous pouvez utiliser boost::multi_index.
(bien que je pense que ce que vous voulez réellement est d'utiliser un type qui contient le vide * et l'entier comme clé de votre carte, et juste de comparer les données brutes pour fournir l'opérateur de comparaison pour la carte)
2
Si vous ne voulez pas utiliser boost, vous pouvez essayer map< int, map<void*, vector> >
. Les recherches sont cependant O (log (taille de carte)).
Questions connexes
- 1. UIWebView n'accepte pas les touches multiples
- 2. Convertir une mappe F # en Hashtable
- 3. C# et touches fléchées
- 4. de 10,100,1000, multiples ... C#
- 5. paramètres multiples dans @selector en Objective-C
- 6. AutoMap.AssemblyOf mappe l'espace de noms entier
- 7. multiples cordes remplace en Objective C
- 8. Remplacements d'expressions rationnelles multiples en C#
- 9. Délimiteurs multiples utilisant Regex.Split en C#
- 10. Utilisez les touches fléchées C++?
- 11. Comment implémenter CTRL-A combinaison de touches en C++
- 12. Détection de plusieurs touches pressées simultanées en C#
- 13. Comment utiliser plusieurs touches de modification en C#
- 14. Récupération d'instances d'objets de domaine en tant que mappe
- 15. C++ Extern/Définitions multiples
- 16. C++ processus multiples?
- 17. Objectif C: délégués multiples
- 18. Initialiseurs multiples Objective-C
- 19. C# Contraintes multiples
- 20. Touches de raccourci en Java
- 21. entrée multiples lignes C++
- 22. C: Temporisations multiples
- 23. Combinaisons de touches dans C# winforms application
- 24. C - Fourches multiples itératives
- 25. Désactiver les touches du clavier lorsque la console de c Exécuter en utilisant c ou C++
- 26. Passe une structure avec de multiples entrées en C++
- 27. Directives de préprocesseur multiples sur une ligne en C++
- 28. ZedGraph barres empilées avec de multiples points en C#
- 29. multiples Télécharger/Upload FTP en utilisant en parallèle C#
- 30. Touches/Valeurs Fonctionnalité pour les itérateurs en C++
C'est exactement ce que je cherchais. Merci! – Morgan