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

Langage C++ Discussion :

Conflit de nom C/C++


Sujet :

Langage C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 340
    Par défaut Conflit de nom C/C++
    Bonjour, je travail sur un projet en C++ qui nécessite l'inclusion de bibliothèques écrites en C. Le problème auquel je suis confronté est le suivant :
    il y a dans un bibliothèque un type qui porte le même nom qu'une des classes de mon projet ce qui entraine des conflits de noms dans tous les sens. J'aurais aimé pouvoir conserver le nom de ma classe tel quel et ne pas être obligé de ruser avec l'utilisation de prefixes ou une modification de l'implémentation pour cacher l'utilisation des bibliothèques.

    Merci d'avance.

  2. #2
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Par défaut
    L'utilisation de namespace pourrait probablement résoudre ton problème.

  3. #3
    Membre chevronné
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 340
    Par défaut
    Oui, j'y ai pensé, j'ai pensé à faire quelque chose comme envelopper les includes dans un un namespace mais je me demandais si ça se faisait ou si c'est vaiment du bricolage (aussi ma première tentative n'a pas été un succés, mais j'ai pu me planter quelque part).

  4. #4
    darthmower
    Invité(e)
    Par défaut
    Bonjour,

    si c'est vraiment du bricolage
    Ça n'est pas de la bidouille, sachant que les namespaces sont fait pour éviter les conflits de noms. Ils n'auraient pas grandes utilités sinon.

  5. #5
    Nouveau candidat au Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 2
    Par défaut
    Bonjour,

    Si les includes qui son enveloppées dans un namespace sont celles de la bibliothèque C, il y a peut de chance que ça fonctionne:
    - la notion de namespace n'existe pas en C et ça risque de foirer un peu à l'édition des liens quand il faudra trouver les symboles de la bibliothèque C qui auront changé à cause de l'inclusion enveloppée dans les namespace.
    - le seul truc à faire quand on inclut des entêtes C dans du code C++ (et quand on veux que l'édition des liens se fasse) c'est le fameux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    extern "C" {
        #include <header_C.h>
    }
    qu'il faut utiliser

    La seule utilisation des namespace disponible est pour encapsuler le code C++ mais pas le code (ou les entêtes) en C.

  6. #6
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Un namespace (anonyme par exemple) pour ton code C++ ne convient-il pas ?

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

Discussions similaires

  1. [subversion]branch et conflit de nom de classe
    Par blaise_laporte dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 14/05/2007, 18h07
  2. conflit de noms de classes
    Par pyrrhon_ dans le forum C++
    Réponses: 8
    Dernier message: 11/04/2007, 14h33
  3. Les conflits de nom ?
    Par cicolas dans le forum Spring
    Réponses: 5
    Dernier message: 18/07/2006, 16h28
  4. Réponses: 5
    Dernier message: 23/02/2006, 00h34
  5. conflit de nom avec perlembed et winsock2
    Par clochette dans le forum MFC
    Réponses: 10
    Dernier message: 21/06/2005, 14h42

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