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++/CLI Discussion :

error C2440: 'static_cast' : impossible de convertir de 'CreerLevel::Mur ^const ' en 'CreerLevel::Mur'


Sujet :

C++/CLI

  1. #1
    Futur Membre du Club Avatar de clavat
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

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

    Informations forums :
    Inscription : Décembre 2010
    Messages : 6
    Points : 6
    Points
    6
    Par défaut error C2440: 'static_cast' : impossible de convertir de 'CreerLevel::Mur ^const ' en 'CreerLevel::Mur'
    Bonjour, j'ai un problème de type !
    J'ai d'un coté une classe Mur et de l'autre un vector de Mur.
    j'aimerais faire un for each a l'intérieur mais une erreur ce fait à la compilation.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    vector<Mur^> vMurs;
    ....
    for each (Mur mur in vMurs){ //Erreur ici !
    ....
    Erreur 3 error C2440: 'static_cast'*: impossible de convertir de 'CreerLevel::Mur ^const ' en 'CreerLevel::Mur'
    Merci de votre aide.

  2. #2
    Membre éprouvé
    Avatar de Gabrielly
    Inscrit en
    Juin 2004
    Messages
    722
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 722
    Points : 1 128
    Points
    1 128
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    array<Mur^> vMurs;
    ....
    for each (Mur mur in vMurs){

  3. #3
    Futur Membre du Club Avatar de clavat
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

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

    Informations forums :
    Inscription : Décembre 2010
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Merci de ta réponse mais ca ne marche pas :s

    j'ai fait ce que tu avais écrit mais il m'a demander de rajouter un ^ ce qui donne :
    et me donne la même erreur donc problème non résolue :s

  4. #4
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 426
    Points : 827
    Points
    827
    Par défaut
    Salut Clavat,

    Gabrielly a écrit : et pas C'est pas pareil! Ca marche?

  5. #5
    Futur Membre du Club Avatar de clavat
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

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

    Informations forums :
    Inscription : Décembre 2010
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    aucun des deux !

    une erreur de compilation ce fait aussi.

  6. #6
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 426
    Points : 827
    Points
    827
    Par défaut
    Euh,...
    ...Et en essayant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for each (Mur^ mur in vMurs)
    à la place de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for each (Mur mur in vMurs)
    ?

    Puisque ton vector contient des 'Mur^' et pas des 'Mur' ( Ton compilateur te dis qu'il ne peut convertir un handle sur objet : 'CreerLevel::Mur ^const' en objet 'CreerLevel::Mur' , c'est bien parce-que tu as oublier le ^ après Mur dans ton 'for each'... )

    Tu me tiens au courant si ça marche...

  7. #7
    Futur Membre du Club Avatar de clavat
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

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

    Informations forums :
    Inscription : Décembre 2010
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    En effet pas d'erreur de compilation

    Merci beaucoup !

    je vais essayer d'adapter mon vector now :p

  8. #8
    Futur Membre du Club Avatar de clavat
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

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

    Informations forums :
    Inscription : Décembre 2010
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Je retire le résolu car le programme compile bien mais me fait une exception sur le for each justement

    La référence d'objet n'est pas définie à une instance d'un objet.
    le contenue des parenthèse n'est toujours pas bon...

    EDIT : j'ai modifier l'initialisation et ce cou si j'ai la même exception mais sur une méthode de la classe mur oO.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    array<Mur^>^ vMurs = gcnew array<Mur ^>(100);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    namespace CreerLevel {
    using namespace System;
    ref class Mur
    {
    public:
    	int debutX, debutY;
    	int finX, finY;
    	Mur(int debutX, int debutY) {
    		this->debutX = debutX;
    		this->debutY = debutY;
    		finX = 0;
    		finY = 0;
    	}
    	//~Mur() {}
    	int getX() { return debutX; }
    	int getY() { return debutY; }
     
    	bool estFinit() {
    		return (finX==0);
    	}
     
    	void finir(int x, int y){
    		finX = x;
    		finY = y;
    	}
    };
    }
    Le problème survient sur getX étant la 1ere appeler par le programme je pense à une coïncidence !

  9. #9
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 073
    Points : 12 119
    Points
    12 119
    Par défaut
    Comment remplissez-vous "vMurs" ?

  10. #10
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 426
    Points : 827
    Points
    827
    Par défaut
    Oui, Bacelar a raison, donne nous un exemple de la fonction 'main' qui utilise 'Murs' et qui plante, pour qu'on puisse t'aider...

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 09/10/2013, 13h46
  2. Réponses: 6
    Dernier message: 06/08/2009, 14h24
  3. VisualC 6.0 -> VisualC 2008 Pro (error C2440 static_cast)
    Par Gaudon dans le forum Visual C++
    Réponses: 14
    Dernier message: 13/02/2009, 15h46
  4. [Continuum] Error de Build/Impossible de récuperer un module par ftp
    Par kalan dans le forum Intégration Continue
    Réponses: 11
    Dernier message: 08/09/2006, 15h18
  5. [XPATH] Impossible de convertir #BOOLEAN en un NodeList
    Par claudyyyyy dans le forum Format d'échange (XML, JSON...)
    Réponses: 7
    Dernier message: 08/02/2006, 16h00

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