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 :

problème avec insert dans une map


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2007
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 21
    Par défaut problème avec insert dans une map
    bonjour!

    J'ai un problème avec une map déclaré comme suit

    map<Classe1,classe2>

    le mot clé est donc une classe et la valeur associée une classe également.
    Il se trouve que la classe 2 dispose d'un constructeur déclaré comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    classe2(double*adress)
    {
    if(adress)
    ...
    else
    ....
    }
    le constructeur prend donc en entrée une adresse.
    et la classe classe2 gère donc très bien les objets instanciés avec des pointeurs NULL

    le problème c'est que si je fais:
    classe1 C1 ;
    Classe2 C2 ; avec C2 instanciés avec un pointeur NULL

    et que je fais ensuite

    MyMap.insert(make_pair(C1,C2))
    eh bien ça me fait une erreur: Debug assertion failed _BLOCK_TYPE_IS_VALID(pHeap nBlockUse)

    et quand C2 est instancié avec un pointeur non NULL ben ça marche.
    Comment faire pour pouvoir instancié avec des pointeurs null et pouvoir inserer dans la map? J'arrive pas à comprendre pourquoi ça marche pas avec les objets instanciés avec des pointeurs NULL

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Est ce que par hasard, les constructeurs par copie et les opérateurs d'affectation de tes 2 classes sont valides ?
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre éprouvé
    Avatar de NiamorH
    Inscrit en
    Juin 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1 309
    Par défaut
    Mais que veut donc dire instancier avec un pointeur null pour un objet qui n'est pas un pointeur ?

    double*adress


    C'est quel genre d'adresse ça ?

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 391
    Par défaut
    C'est un pointeur de double passé en paramètre du constructeur.
    Mais si on fait ça, je conseille vivement de déclarer le constructeur comme explicit.

    LePetitBricoleur: Peux-tu nous montrer le code complet de ton constructeur ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. Problème d'insertion dans une base avec Java
    Par gnaly dans le forum Interfaces Graphiques en Java
    Réponses: 2
    Dernier message: 31/01/2014, 12h39
  2. [MySQL-5.5] Problème d'insertion dans une table avec un fichier externe
    Par tabony dans le forum Requêtes
    Réponses: 0
    Dernier message: 26/11/2013, 12h55
  3. [MySQL] problème avec insert dans une table
    Par berti dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 04/07/2008, 15h30
  4. Problème avec Insert dans une table contenant deux clés
    Par pure_blue dans le forum Accès aux données
    Réponses: 5
    Dernier message: 23/10/2006, 19h32
  5. [Conception] Problème avec INSERT dans une TABLE
    Par dunbar dans le forum PHP & Base de données
    Réponses: 26
    Dernier message: 20/07/2006, 12h56

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