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

SL & STL C++ Discussion :

Petit probleme avec un vector


Sujet :

SL & STL C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut Petit probleme avec un vector
    Je n'arrive pas à mettre un vecteur en tant que propriété d'un de mes formulaires.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	private:
    	boolean boolSrc;
    	boolean boolRef;
    	vector<int> source;
    erreur :
    error C3633: impossible de définir 'source' en tant que membre d'un 'analyseur::frmCVT' managé
    meme si je met std:: devant j'ai la meme erreur

    Bien sur j'ai mis un include <vector> et si je place la définition du vecteur directement dans une methode de mon formulaire il n'y a pas de probleme :/

  2. #2
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    t'utilises WxWidget???

  3. #3
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Bien sur, je suppose que si tu utilisais un :
    ou si tu définisais toi-même le constructeur par recopie, cela compilerait ?

    Pourtant, je ne vois pas pourquoi un vector n'aurait pas de constructeur par recopie par défaut.

  4. #4
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    en effet ça marche avec un pointeur merci

  5. #5
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    Oui, enfin pourquoi stocker un pointeur, alors que l'on souhaite un objet???
    Est-ce vraiment ce que tu souhaites?

  6. #6
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Non, ce n'est pas la solution.
    C'est juste une analyse de l'erreur.

    L'idée c'est que le compilateur rale parce qu'il ne sait pas générer automatiquement un contructeur par recopie. Et il ne sait pas le faire parce qu'il ne sait pas dupliquer le membre de Ce qui est quand même étonnant.
    Car je ne sais pas pourquoi il ne peut pas dupliquer ce membre.

    Quoi qu'il en soit, si tu utilises un pointeur, tu ne fais que masquer le problème dans le sens ou si tu copie ta classe, tu copiera le pointeur et donc tes deux instances pointeront sur le même vector<int>. Ce n'est sans doute pas ce que tu veux.

    Redéfinir toi-même le constructeur par recopie avec un assert statique (confère boost) serait sans doute une solution plus propre, dans le sens où au moins tu ne cache pas le problème, et si un jour tu as besoin de copier ton objet, cela crashera proprement à la compilation.

    Une autre solution "propre" serait de redéfinir toi-même ton constructeur par recopie en implémentant le comportement désiré, mais c'est peut-être du temps perdu si tu es sur de ne jamais vouloir copier ton objet.

    Est-ce que le fait de creuser la question t'intéresse ?
    Est-ce que tu comprends ce dont il est question ?

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

Discussions similaires

  1. petit probleme avec Vector
    Par Msakeni dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 11/12/2008, 19h28
  2. [C#] Petit problème avec un élément du FAQ
    Par matech dans le forum ASP.NET
    Réponses: 11
    Dernier message: 24/01/2008, 14h11
  3. petit probleme avec Devil
    Par ellipse dans le forum DevIL
    Réponses: 2
    Dernier message: 01/02/2005, 18h41
  4. [TP]petit probleme avec solution
    Par pompompolom dans le forum Turbo Pascal
    Réponses: 1
    Dernier message: 02/12/2004, 19h48
  5. petit probleme avec l'éditeur de builder
    Par qZheneton dans le forum C++Builder
    Réponses: 2
    Dernier message: 28/10/2004, 16h19

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