| View previous topic :: View next topic |
| Author |
Message |
Florian Guest
|
Posted: Mon Feb 14, 2005 10:33 pm Post subject: Probleme avec les vecteurs |
|
|
Bonjours
J'ai un petit probleme de vecteur mon programme compille avec g++ de
mandrake 10.1
il s'execute mais à la fin de l'exécution il s'arrette et il dit :
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
Abort
je pense que j'ai un dépassement mais je ne vois pas ou ?
je fille mon code
|
|
| Back to top |
|
 |
Matthieu Moy Guest
|
Posted: Mon Feb 14, 2005 10:44 pm Post subject: Re: Probleme avec les vecteurs |
|
|
Florian <florian.morineau2 (AT) 9online (DOT) fr> writes:
| Quote: | Bonjours
J'ai un petit probleme de vecteur mon programme compille avec g++ de
mandrake 10.1
il s'execute mais à la fin de l'exécution il s'arrette et il dit :
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
Abort
|
Apprendre de toute urgence a utiliser un déboggueur pour ce genre de
problèmes ...
--
Matthieu
|
|
| Back to top |
|
 |
Loïc Joly Guest
|
Posted: Mon Feb 14, 2005 10:56 pm Post subject: Re: Probleme avec les vecteurs |
|
|
Florian wrote:
| Quote: | Bonjours
J'ai un petit probleme de vecteur mon programme compille avec g++ de
mandrake 10.1
|
Oh, un programme pour la Saint-Valentin des souris...
| Quote: |
il s'execute mais à la fin de l'exécution il s'arrette et il dit :
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
Abort
je pense que j'ai un dépassement mais je ne vois pas ou ?
|
C'est une des fonctions vector::at qui effectivement déborde.
Avec un environnement de développement bien fait, il y aurait moyen de
lui faire arrêter dès le lancement de l'exception, et non pas quand on
n'a plus d'information sur là où elle se produit... Je ne sais pas si
gdb permet de faire ça.
| Quote: | #include <iostream.h
#include "souris.h"
#include
|
Pourquoi n'utilises tu pas les standards, à savoir
J'ai vu ce bout de code au moins qui pose problème (je n'ai pas compilé
ton code, je ne garanti pas que c'est le seul endroit) :
| Quote: | for(int i=0;i
{
mal_cherche_femmelle(SF.at(i),SM.at(i));
}
|
Autant on est assuré que SF.at(i) est ok, SM.at(i) ne va pas marcher dès
lors qu'il y a plus de femelles que de mâles.
--
Loïc
|
|
| Back to top |
|
 |
Florian Guest
|
Posted: Tue Feb 15, 2005 8:03 am Post subject: Re: Probleme avec les vecteurs |
|
|
Matthieu Moy a écrit :
| Quote: | Florian <florian.morineau2 (AT) 9online (DOT) fr> writes:
Bonjours
J'ai un petit probleme de vecteur mon programme compille avec g++ de
mandrake 10.1
il s'execute mais à la fin de l'exécution il s'arrette et il dit :
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
Abort
Apprendre de toute urgence a utiliser un déboggueur pour ce genre de
problèmes ...
|
Je ne sais pas comment utiliser un déboggueur
|
|
| Back to top |
|
 |
noone@nowhere.com Guest
|
Posted: Tue Feb 15, 2005 9:11 am Post subject: Re: Probleme avec les vecteurs |
|
|
Florian wrote:
| Quote: | Matthieu Moy a écrit :
Florian <florian.morineau2 (AT) 9online (DOT) fr> writes:
Bonjours
J'ai un petit probleme de vecteur mon programme compille avec g++ de
mandrake 10.1
il s'execute mais à la fin de l'exécution il s'arrette et il dit :
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
Abort
Apprendre de toute urgence a utiliser un déboggueur pour ce genre de
problèmes ...
Je ne sais pas comment utiliser un déboggueur
|
installer "gdb"
installer "ddd" un front-end pour "gdb"
compiler avec l'option "-g"
lancer ddd monprogramme
après c'est assez simple (naturel) à utiliser
Cordialement
|
|
| Back to top |
|
 |
Fabien LE LEZ Guest
|
Posted: Tue Feb 15, 2005 6:53 pm Post subject: Re: Probleme avec les vecteurs |
|
|
On Tue, 15 Feb 2005 09:03:30 +0100, Florian <astroflo2002 (AT) yahoo (DOT) fr>:
| Quote: | Je ne sais pas comment utiliser un déboggueur
|
C'est pour ça que Matthieu te propose de l'apprendre.
--
;-)
|
|
| Back to top |
|
 |
Stan Guest
|
Posted: Thu Feb 17, 2005 8:29 am Post subject: Re: Probleme avec les vecteurs |
|
|
"Matthieu Moy" <MatthieuNOSPAM.Moy (AT) imag (DOT) fr.invalid> a écrit dans le message
de news:vpqr7jizrr6.fsf (AT) ecrins (DOT) imag.fr...
| Quote: | Florian <florian.morineau2 (AT) 9online (DOT) fr> writes:
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
Abort
Apprendre de toute urgence a utiliser un déboggueur pour ce genre de
problèmes ...
--
Matthieu
|
Avant de se lancer dans ce genre de débuggage, il est utile
de savoir placer quelques traces dans le source pour afficher les
valeurs à inspecter.
L'utilisation de gdb à la moindre occasion est moins pédagogique
que de simuler mentalement le comportement du prog.
--
- Stan
|
|
| Back to top |
|
 |
Florian Guest
|
Posted: Mon Feb 21, 2005 11:07 pm Post subject: Re: Probleme avec les vecteurs |
|
|
Stan a écrit :
| Quote: | "Matthieu Moy" <MatthieuNOSPAM.Moy (AT) imag (DOT) fr.invalid> a écrit dans le message
de news:vpqr7jizrr6.fsf (AT) ecrins (DOT) imag.fr...
Florian <florian.morineau2 (AT) 9online (DOT) fr> writes:
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
Abort
Apprendre de toute urgence a utiliser un déboggueur pour ce genre de
problèmes ...
--
Matthieu
Avant de se lancer dans ce genre de débuggage, il est utile
de savoir placer quelques traces dans le source pour afficher les
valeurs à inspecter.
L'utilisation de gdb à la moindre occasion est moins pédagogique
que de simuler mentalement le comportement du prog.
--
- Stan
|
Merci car c'est ce que j'ai fait il y avait une grosse connerie dans mon
code que j'avais laisser passé
|
|
| Back to top |
|
 |
|