Je envisage d'utiliser J'ai entendu MSVC a une fonctionnalité appelée "Visualiseurs de débogueur" qui permettrait à l'utilisateur de faire du débogueur plus intelligent de ce genre de choses, mais je n'ai jamais rien écrit de tel, et je ne suis pas extrêmement ferme avec de telles choses. p>
Par exemple, comparez le comportement de Comment puis-je commencer à utiliser ou à mettre en œuvre une telle chose? P> boost :: pTR_Container code> à la suite des réponses de Cette question . Mon plus gros problème avec la bibliothèque est que je ne peux pas afficher le contenu de la collection dans le débogueur, car le débogueur MSVC ne le reconnaît pas, et je ne peux donc pas voir le contenu des conteneurs. (Toutes les données sont stockées comme
void * code> en interne) p>
Boost :: Shared_PTR Code> avec MSVC
STD :: TR1 :: Shared_PTR code>. Dans le débogueur (c'est-à-dire dans la fenêtre de surveillance), la version boost apparaît comme un gros gâchis de variables internes utilisées pour la mise en oeuvre du pointeur partagé, mais la version MSVC apparaît comme un pointeur ordinaire sur l'objet (et le
Shared_Ptr. code> Les entrées sont cachées). P>
4 Réponses :
Les visualiseurs de débogueur ne sont disponibles que pour le code géré, selon http: // msdn .microsoft.com / fr-US / US / Bibliothèque / Zayyhzts.aspx qui fournit plus d'informations à leur sujet. P>
+1 - Peut-être que j'utilise le mauvais mot alors - je voudrais juste que le contenu d'un boost :: pTR_vector code> pour apparaître comme un
std :: vecteur code> fait dans le débogueur.
Certaines informations utiles sur MSDN: P>
Un échantillon de code de code ou deux: p>
Tous impliquent autoexp.dat code> d'une manière ou d'une autre, ce qui en fait un terme de recherche efficace. P>
Notez que autoexp.dat code> est fondamentalement non documenté. Le fichier lui-même contient quelques exemples et une documentation rudimentaire, mais en dehors de cela, vous êtes à peu près vous-même.
@JAlf: Cela peut difficilement être sans papiers lorsque j'ai fourni des liens vers la documentation, le peut-il maintenant? Je suppose qu'il peut y avoir autoexp.dat code> Syntaxe non couvert là-bas, mais puisque écrire un addin EE est documenté, vous pouvez faire à peu près n'importe quoi.
La seule documentation de officiel i> est celle du fichier lui-même. Notez que la page MSDN que vous avez liée pour simplement indiquer simplement "instructions sur la manière d'écrire des règles Autoexply figure dans le fichier lui-même". ;)
@jalf: Au bas de cette page MSDN est un lien ici: MSDN.MicRosoft .com / fr-US / bibliothèque / 8fwk67y3px , qui semble qu'il couvre tous les autoexp.dat code> Syntaxe nécessaire pour charger une addition de visualiseur personnalisée tout à fait (le
autoexper .dat code> partie est assez minimal). Écrire le complément d'autre part, on dirait que la documentation consiste presque exclusivement d'échantillons.
voir Ce lien qui fournit chaque visualiseur de débogueur (via Tous les visualiseurs sont disponibles dans le
svn . Actuellement, nous soutenons ce qui suit
Types de boost: P>
autoexper .dat code>) Vous voudrez peut-être: p>
Bien qui possède. Merci beaucoup!
Vous pouvez utiliser cette extension pour Visual Studio 2012+, check Ce lien . Ils basés sur des visualiseurs de boost svn pour Visual Studio 2008/2010 P>
Principation de l'extension Les types de boost suivants: p>
boost :: Shared_ptr, boost :: faible_ptr, boost :: intrusion_ptr, boost :: Shared_array, boost :: Scoped_ptr, boost :: Scoped_array Strong> Li> boost :: ptr_array, boost :: PTR_Vector, boost :: pTR_List, boost :: pTR_DEQURE, boost :: pTR_MAP, boost :: pTR_MUNET, boost :: pTR_Multimap, boost :: pTR_Multiset strong> < / li> - Boost :: Array, boost :: dynamic_bitset, boost :: circulaire_buffer Boost :: Unommanded_map, boost :: Unorded_set, boost :: Unommanded_multimap, boost :: Unorded_Multiset Li>
- boost :: intrusive :: Liste, boost :: intrusion :: Slist Li>
- boost :: conteneur :: basique_string, boost :: conteneur :: deque, boost :: conteneur: vecteur li>
- boost :: optionnel, boost :: Tout, boost :: variante li>
- Boost boost :: FileSystem :: Path, Boost :: FilserSystem :: Directory_entry, Boost :: FilserSystem :: File_status Li>
- boost :: posix_time :: pTime, boost :: posix_time :: time_duration li>
- Boost :: Regex Li>
- Boost :: Interprocess :: offset_ptr li>
- Boost :: Tribool Li>
- boost :: unique_lock li>
- boost :: uuids :: uuid li> ul> blockQuote>
Je ne me souviens pas exactement, mais je pense que vous pouvez utiliser des opérateurs de casting dans la fenêtre de la montre
@Alexandre c.: Vous pouvez, mais c'est terriblement gênant.