C'est a propos de runtime erreur

Fermé
khalilCC Messages postés 5 Date d'inscription mercredi 2 janvier 2013 Statut Membre Dernière intervention 30 janvier 2013 - 2 janv. 2013 à 18:52
khalilCC Messages postés 5 Date d'inscription mercredi 2 janvier 2013 Statut Membre Dernière intervention 30 janvier 2013 - 14 janv. 2013 à 15:38
Bonjour,

Je suis debutant en language C++ tous ce que je sais je l'ai eu sur internet,en premier un peu de C ,sans m'attarder etant donné que C++ c'est du C avec un plus ,alors autant ne pas m'attarder la dessus.
Apres je devais utiliser une bibliotheque C++ en l'occurence Qt ,pour creer mon programme
avec GUI ,voila l'historique.
Maintenant mon programme produit une erreur envoyée par Microsoft Visual C++,qui dit
(this application has requested the runtime to terminat it in an unusual way)
J'ai cherche sur internet pour voir si le probleme a ete pose dans les meme termes,mais
d'apres moi l'erreur est declenché par d'autres causes.
De quoi est ce que j'ai besoin exactement ?
A suivre
MERCI.
A voir également:

3 réponses

Bonjours,

Tu a du overlow une variable dans ton programme. Donne nous la code et on te dira ou est la faute.

Merci
0
khalilCC Messages postés 5 Date d'inscription mercredi 2 janvier 2013 Statut Membre Dernière intervention 30 janvier 2013
Modifié par khalilCC le 3/01/2013 à 04:09
Salut
Merci de votre reponse,mais je dois dire que je ne sais pas exactement dans qu'elle partie de mon code se trouve l'erreur.mon programme est un editeur
qui affiche des rectangles colores vert si la touche V rouge si la touche R et
bleu si la touche B,et un petit graphisme si G.
Il s'etale sur qlq fichiers headers et cpp,et aussi n'est pas tres commenttes,alors
il ne sera pas facile a lire,ou meme a poster ici,alors je vais essayer de le commenter un peu ,et de reduire son volume pour le poster en entier ici.
sinon si je savait ou l'erreur se situe..!
Je vous prie alors de chercher ma reponse dans qlqs jours.
MERCI
0
khalilCC Messages postés 5 Date d'inscription mercredi 2 janvier 2013 Statut Membre Dernière intervention 30 janvier 2013
14 janv. 2013 à 15:38
Salut
voila mon code pas tes bon a voir ...
- En premiere j'ai cinq objets graphiques qui s'inscrivent dans un rectangle de
8 sur 13 ,au maximum.
il correspondent aux touches B,V,R,T du clavier .et un correspond a un curseur
qui decrit une scene graphique ,une class ou j'ai declaré trois variables
statiques qui en s'incrémentant decrémetant definissent comme parametre ou
argument , les coordonnées dans les metodes d'ajouts des objets dans
la scene .
- Class scene graphique Mag :
_________________________
Mag::Mag()
     {
         c   = new Item('C',Qt::NoBrush); /*C=curseur,juste une ligne noir*/
         ba  = new Item('B',Qt::blue);
         sad = new Item('V',Qt::green);
         tta = new Item('R',Qt::red);        /*B,V,R=rects,colores*/
         test= new Graph;                        /*Graphique ,noir*/
         g = new QGraphicsScene;
         g->setSceneRect(0,0,L,H);
     }
int Mag::x=L-80;
int Mag::y=14;
int Mag::fy=4;
//--------------------------------------------------------------------------------                               //les deux coordonnees de la fonction
int Mag::coyy(int x)
     {
         if(x==0){fy=4;}
         else if(x==1){fy+=1;}
         return fy*y;
     }
//--------------------------------------------------------------------------------
int Mag::coxzero(int a)
     {
         if(a==1){x=594;}
         else if(a==2){x=591;}
         return x;
     }
//--------------------------------------------------------------------------------
int Mag::cx(int a)
     {
          if(a==1)
         {x-=((ba->getl())+1);if(x<74){x=594;}}
         else if(a==2){x-=((sad->getl())+1);if(x<74){x=593;}}
         else if(a==3){x-=((tta->getl())+1);if(x<74){x=591;}}
         else if(a==33){x-=9;if(x<74){x=591;}}
         else if(a==4){x-=((c->getl())+1);if(x<74){x=594;}}
         return x;
     }
//-----------------------------------------------------------------------------------------
int Mag::coy()
     {
         if((x<=80||x>594)&&fy<60)
         {fy++;}
         return fy*y;
     }
int Mag::coyTaDhad()
     {
         if((x<=81||x>593)&&fy<60)
         {fy++;}
         return fy*y;
     }

- Class de l'editeur Gw :
___________________
 Gw::Gw()
 {
     s = new Mag;
     s->setFocus();
     setScene(s);
     setSceneRect(QRect(0,0,L,H));
     b = new QPushButton("efface",this);
     b->setGeometry(860,70,130,30);
     s->addWidget(b);
     pun = new QPushButton("print",this);
     pun->setGeometry(860,130,130,30);
     s->addWidget(pun);
     cu = new Item('C',Qt::NoBrush);
     //s->addItem(cu);
     connect(b,SIGNAL(clicked()),s,SLOT(clear()));
     connect(pun,SIGNAL(clicked()),this,SLOT(print()));
 }
void Gw::keyPressEvent(QKeyEvent * k)
 {
     switch (k->key())
     {
         case Qt::Key_B:
              blue();
         break;
         case Qt::Key_V:
              green();
         break;
         case Qt::Key_R:
              red();
         break;
         case Qt::Key_T:
              g();
         break;
         case Qt::Key_Left:
              cursor(1);
         break;
         case Qt::Key_Right:
              cursor(4);
         break;
         case Qt::Key_Down:
              cursor(2);
         break;
         case Qt::Key_Up:
              cursor(3);
         break;
     default:
         QGraphicsView::keyPressEvent(k);
     }
}
void Gw::drawBackground(QPainter * painter,const QRectF &rect)
{
     Q_UNUSED(rect);
     painter->fillRect(-174,0,1016,932,Qt::black);
     painter->fillRect(0,0,L,H,Qt::white);
}
void Gw::cursor(int c)
{
     Item * t  = new Item('R',Qt::red);
     Graph* gr = new Graph;
     //s->addItem(cu);
     //Item * cu = new Item('C',Qt::NoBrush);
     //cu = new Item('C',Qt::NoBrush);
     s->addItem(cu);
     if(c==1)
     {cu->setPos(s->cx(4),s->coy());}
     else if(c==2)
     {
         if(t||gr)
         {cu->setPos(s->coxzero(2),s->coyy(1));}
         else
         {cu->setPos(s->coxzero(1),s->coyy(1));}
     }
     else if(c==3)
     {cu->setPos(s->coxzero(1),s->coyy(0));}
     else if(c==4)
     {
         if(t||gr)
         {cu->setPos(s->coxzero(2)-5,s->coyy(1));}
         else
         {cu->setPos(s->cx(4)-5,s->coy());}
     }
}
//---------------------------------------------------------------------------------
void Gw::blue()
{
     Item * b = new Item('B',Qt::blue);
     s->addItem(b);
     b->setPos(s->cx(1),s->coy());
}
void Gw::green()
{
    Item * sad = new Item('V',Qt::green);
    s->addItem(sad);
    sad->setPos(s->cx(2),s->coy());
}
void Gw::red()
{
    Item * tta = new Item('R',Qt::red);
    s->addItem(tta);tta->setPos(s->cx(3),s->coyTaDhad());
}
void Gw::g()
{
    Graph * gr = new Graph;
    s->addItem(gr);gr->setPos(s->cx(33),s->coyTaDhad());
}

Si vous tenter de lire ce code ,meme sans repondre merci.
MERCI
0