2009-12-01 5 views
21

Est-il possible de voir le contenu d'un tableau alloué dynamiquement, comme dans:Eclipse-C++ - Débogage: voir le contenu d'un tableau

int *array = new int[dimension]; 

Je ne vois que la valeur du pointeur. Edit: je viens de trouver l'option "afficher en tant que tableau", mais je dois toujours entrer manuellement la taille de la matrice. Est-il possible de l'obtenir automagiquement?

Répondre

35

dans Eclipse, pour voir le contenu d'un tableau alloué dynamiquement (pour toute autre personne qui tombe par hasard sur cette question),

  1. assurez-vous êtes dans la perspective de débogage. recherchez la fenêtre "variables". Si vous ne le voyez pas, cliquez sur "window"> "show view"> "variables".
  2. clic droit sur le tableau de variables d'affichage de clic
  3. sous forme de tableau
  4. éclipse ne connaît pas la taille de votre tableau est, donc tapez 0 pour l'indice de départ et le nombre d'éléments que vous avez affectés dynamiquement pour la longueur.

choose display as array in eclipse

3

Je viens de trouver l'option "afficher en tant que tableau", mais je dois toujours entrer manuellement la taille de la matrice. Est-il possible de l'obtenir automagiquement?

C'est bon. Je resterais avec ça. Obtenir le tableau automatiquement n'est pas possible dans le cas général en C ou C++, bien que sûrement dans certains cas triviaux il pourrait être fait (mais probablement pas, pourtant - les dispositifs doivent être implémentés avant qu'ils existent, pour paraphraser Raymond Chen).

8

Si vous voulez éviter d'avoir à faire à plusieurs reprises « Afficher en tant que matrice », ouvrez l'onglet « Expressions » et ajoutez l'expression (*[email protected]). Je ne sais pas pourquoi les parenthèses sont nécessaires. Sans eux, vous auriez une erreur.

5

Dans l'onglet "Expressions", si vous faites ce que vous avez noté et que vous tapez (*[email protected]), vous pouvez également définir dynamiquement la taille du tableau à afficher. Cela fonctionne même quand vous avez besoin d'une autre expression pour l'obtenir.

Par exemple, si vous avez une variable x qui contient la taille de votre tableau, vous tapez (*[email protected]) et le contenu de x sera utilisé comme dimension.

« x » peut aussi être des choses comme contenu struct ou déréférencement de pointeur et autres - à savoir

(*[email protected]>x) 

fonctionne très bien.

Questions connexes