Partage
  • Partager sur Facebook
  • Partager sur Twitter

Destructeurs en C++ et xCode

    30 octobre 2018 à 15:16:51

    Bonjour à tous : 

    En suivant le cours : "Apprenez à programmer en C++", j'ai appris l'utilisation des destructeurs, cependant, lors de la compilation, le message d'erreur suivant apparaît : 

    Undefined symbols for architecture x86_64:

    "Personnage::~Personnage()", referenced from:

    _main in main.o

    ld: symbol(s) not found for architecture x86_64

    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    Savez vous comment réparer ce problème ? 

    Je vous remercie, et vous souhaite une bonne journée !

    Alexandre

    • Partager sur Facebook
    • Partager sur Twitter
      30 octobre 2018 à 22:08:18

      Bonjour,

      Mauvais forum

      Le sujet est déplacé de la section Discussions Software vers la section Langage C++

      • Partager sur Facebook
      • Partager sur Twitter

      Pas d'aide concernant le code par MP, le forum est là pour ça :)

        31 octobre 2018 à 7:19:28

        Bonjour,

        L'erreur indique que tu as indiqué que ton objet nécessite un destructeur particulier, mais tu n'en a défini nulle part le code qui lui correspond.
        Es_tu sûr d'avoir compris ce qu'est un destructeur? Tout objet a un destructeur, le plus souvent le compilateur le crée automatiquement. T'as la possibilité d'en définir un particulier à ton cas, a toi d'indiquer ce qu'il faut faire au moment de la destruction.

        • Partager sur Facebook
        • Partager sur Twitter

        En recherche d'emploi.

          31 octobre 2018 à 7:48:14 - Message modéré pour le motif suivant : Merci de créer votre propre sujet.


            31 octobre 2018 à 13:39:51

            Avec un peut de chances, tu as écrit quelque chose comme suit:

            class Personnage
            {
            public:
                Personnage();
                ~Personnage();
            };
            
            Personnage::Personnage()
            {
            }

            Tu définis un destructeur, mais pas son implémentation. Normal que le linker, ne retrouvant pas tous ses petits, t'insulte comme il se doit.

            • Partager sur Facebook
            • Partager sur Twitter

            Destructeurs en C++ et xCode

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown