IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

invalid conversion from int to int


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Par défaut invalid conversion from int to int
    bonjour ,

    je viens de développer un jeu en c++,j'ai trouvé quelques problèmes avec les pointeurs voila le message qui s'affiche "invalide conversion from int to int"
    voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     void Brique::collision(ball b){
                             if(i>0) /* si ya une brique,une collison avec la balle peux avoir lieu*/
                                 {
                             if((b.rballe.x + b.rballe.w) >= rbrique.x
                                       &&
                              (b.rballe.x) <= (rbrique.x + rbrique.w)
                                        &&
                              (b.rballe.y + b.rballe.h) >= rbrique.y
                                        &&
                              (b.rballe.y) <= (rbrique.y + rbrique.h))
                                         {
                                      b.sens2=1;
          /* efface les briques selon le niveau*/
    l'erreur se produit dans la ligne b.sens2=1 ;sachant que sens2 est un attribut déclarée comme pointeur dans la classe balle .merci d'avance

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 119
    Billets dans le blog
    148
    Par défaut
    [EDIT]J'avais mal lu, vikki donne la solution
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre expérimenté Avatar de vikki
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 292
    Par défaut
    Hello,
    Effectivement, tu sembles vouloir affecter un entier à un pointeur, heureusement que le compilateur t'arrête Pourquoi avoir déclaré sens2 en tant que pointeur (pointeur vers quel type dalleurs?) alors que le but semble de stocker un entier en fonction du sens (peut être qu'un enum serait plus claire)?

  4. #4
    Membre actif
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Par défaut
    Citation Envoyé par vikki Voir le message
    Hello,
    Pourquoi avoir déclaré sens2 en tant que pointeur (pointeur vers quel type dalleurs?) alors que le but semble de stocker un entier en fonction du sens (peut être qu'un enum serait plus claire)?
    pointeur vers un entier;j'ai déclaré un pointeur car j'ai besoin de modifer la valeur elle meme du variable sens2 je vous souviens que sens2 est déclaré dans une autre classe Balle mais elle est aussi utilisée dans cette classe "brique"

  5. #5
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 119
    Billets dans le blog
    148
    Par défaut
    Citation Envoyé par asprog Voir le message
    pointeur vers un entier;j'ai déclaré un pointeur car j'ai besoin de modifer la valeur elle meme du variable sens2 je vous souviens que sens2 est déclaré dans une autre classe Balle mais elle est aussi utilisée dans cette classe "brique"
    Alors dans ce principe là, il faudrait mettre
    Pourtant, vous raisonnement est faux.
    Si vous voulez modifier une balle, ce n'est pas son sens qui doit être un pointeur, mais toute la balle, lors du passage dans la fonction qui fait la modification.
    Sur ce principe là, votre fonction collision prends un pointeur sur ball (afin de modifier le sens de la balle par la suite):
    (En prennant en compte que sens2 est un int). Et hop, plus de problème
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  6. #6
    Membre actif
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Par défaut
    et si j'ai écris b->sens2=1 est ce que la variable sens2 prend la valeur 1 en mémoire sachant que dans une autre fonction dans la classe balle j'ai une autre utilisation de sens2 et qui prend une autre valeur.
    bref sens2 est utilisée plusieurs fois dans mon programme et je veux bien conserver et récupéré sa dernière valeur c'est pourquoi j'ai pensé au pointeur

  7. #7
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 119
    Billets dans le blog
    148
    Par défaut
    Citation Envoyé par asprog Voir le message
    et si j'ai écris b->sens2=1 est ce que la variable sens2 prend la valeur 1 en mémoire sachant que dans une autre fonction dans la classe balle j'ai une autre utilisation de sens2 et qui prend une autre valeur.
    bref sens2 est utilisée plusieurs fois dans mon programme et je veux bien conserver et récupéré sa dernière valeur c'est pourquoi j'ai pensé au pointeur
    Oui, cela fonctionnera.
    En fait, dans votre application, vous ne devriez qu'avoir une seule balle.
    Si une fonction à besoin d'avoir des informations sur la balle, on lui donne la balle en paramètre (sans pointeur (si possible avec une référence constante (voir FAQ C++))
    Si une fonction a besoin de modifié les paramètre de la balle, alors dans ce cas, il faut passer un pointeur.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. invalid conversion from ‘Position*’ to ‘int’ !?
    Par User Name dans le forum Débuter
    Réponses: 16
    Dernier message: 26/06/2011, 23h57
  2. Réponses: 4
    Dernier message: 15/10/2008, 21h30
  3. Réponses: 7
    Dernier message: 16/02/2008, 07h30
  4. error: invalid conversion from `const wxChar*' to `CHAR*'
    Par barbarello dans le forum wxWidgets
    Réponses: 16
    Dernier message: 31/01/2006, 11h28
  5. Réponses: 2
    Dernier message: 24/12/2005, 11h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo