Erreur de segmentation (débutant)
Vicoo
-
Vicoo -
Vicoo -
Bonjour,
j'ai eu erreur que j'arrive pas pourquoi :
http://www.casimages.com/img.php?i=121027043843387625.png
Et le destructeur personnage:
Une idée d'ou vient le problème ?
'lerreur est sur l'image voir sur le lien' :)
Merci a tous
j'ai eu erreur que j'arrive pas pourquoi :
http://www.casimages.com/img.php?i=121027043843387625.png
int main() {
Personnage * p[3];
p[0] = new hero("C","Rambo", 100, false, 4, 10, 0, 0, 5, 5);
p[1] = new hero("C","mini", 100, false, 4, 10, 0, 0, 5, 5);
p[2] = new hero("C","mechant", 100, false, 4, 10, 0, 0, 5, 5);
cout << "OK" << endl;
Grille ferme(p);
for(int i=0 ; i<3 ; i++)
{
delete p[i];
}
return 0;
}
class Grille{
Personnage* g[5][5];
public:
Grille(Personnage * p[]);
~Grille(){delete[] g;};
bool vide(int x, int y);
void affiche();
string get_perso(int x,int y);
};
Et le destructeur personnage:
Personnage::~Personnage() {cout<<"Personnage détruit"<<endl;}
Une idée d'ou vient le problème ?
'lerreur est sur l'image voir sur le lien' :)
Merci a tous
A voir également:
- Erreur de segmentation (débutant)
- Erreur 0x80070643 - Accueil - Windows
- Erreur de lecture reconnecté en 3s - Forum TV & Vidéo
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
5 réponses
tu pourrais développer stp ?
je pense que ca vient de mon delete je dois mal supprimer la mémoire alloué, ais je ne vois pas comment faire autrement, des idées ?
up please !
je pense que ca vient de mon delete je dois mal supprimer la mémoire alloué, ais je ne vois pas comment faire autrement, des idées ?
up please !
Grille.cpp:
Grille.h:
main.cpp:
Personnage.h:
Voila, des idées ?
#include"Grille.h"
Grille :: Grille(Personnage* p[]){
for(int i=0;i<5;++i){
for(int j=0;j<5;++j){
g[i][j]=0;
}
}
srand(time(NULL));
int x,y; // les coord
for(int k = 0; k<3; ++k){
do{
x = rand()%5;
y = rand () %5;
}while(!vide(x,y));
g[x][y] =p[k];
}cout<<"grille cree"<<endl;
}
Grille.h:
#ifndef GRILLE
#define GRILLE
#include "Personnage.h"
#include "Canard.h"
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
class Grille{
Personnage* g[5][5];
public:
Grille(Personnage * p[]);
~Grille(){delete[] g;};
};
#endif
main.cpp:
#include <iostream>
#include "Personnage.h"
#include "Canard.h"
#include "stdio.h"
#include "Grille.h"
using namespace std;
int main() {
Personnage * p[3];
p[0] = new Canard("C","Rambo_Cannard", 100, false, 4, 10, 0, 0, 5, 5);
p[1] = new Canard("C","mini_Cannard", 100, false, 4, 10, 0, 0, 5, 5);
p[2] = new Canard("C","mechant_Cannard", 100, false, 4, 10, 0, 0, 5, 5);
cout << "OK" << endl;
Grille ferme(p);
for(int i=0 ; i<3 ; i++)
{
delete p[i];
}
return 0;
}
Personnage.h:
#include <iostream>
using namespace std;
#ifndef PERSONNAGE_H_
#define PERSONNAGE_H_
class Personnage {
public:
Personnage();
Personnage(string Symbole,string Nom);
virtual ~Personnage(){}
Personnage(const Personnage & p){
_S=p._S;
_nom=p._nom ;
}
Personnage & operator =(const Personnage &p){
if(this != &p){
_S=p._S;
_nom=p._nom ;
return *this;
}
}
Voila, des idées ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question