Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
426 connectés 

  FORUM HardWare.fr
  Programmation
  C

  conflit de noms ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

conflit de noms ?

n°818991
blackgodde​ss
vive le troll !
Posté le 10-08-2004 à 14:52:47  profilanswer
 

Bonjour,
 
je dois dans un meme programme reprendre des bouts de code de sources differentes. seulement voila, je me retrouve avec des conflits de nom.
 
En c++, j'aurais utilisé des namespaces, mais ca n'existe apparement pas en C.
 
qq1 aurait une idée pour contourner le problème ?
 
(a part renommer toutes les fonctions/variables en conflit)


---------------
-( BlackGoddess )-
mood
Publicité
Posté le 10-08-2004 à 14:52:47  profilanswer
 

n°818993
cris56
Posté le 10-08-2004 à 14:53:56  profilanswer
 

met en static quand tu peux
 
[edit] j'ai rien dit :D


Message édité par cris56 le 10-08-2004 à 14:55:15
n°818995
blackgodde​ss
vive le troll !
Posté le 10-08-2004 à 14:55:56  profilanswer
 

en static => la fonction est local, et n'est donc pas visible de l'exterieur de l'unité de compilation, donc le linker peut prendre 2 fonctions static du meme nom dans 2 unités de compilation différentes c bien ca ?


---------------
-( BlackGoddess )-
n°819001
cris56
Posté le 10-08-2004 à 14:59:21  profilanswer
 

si elle sont toutes les deux static, oui

n°819007
Kristoph
Posté le 10-08-2004 à 15:07:06  profilanswer
 

BlackGoddess a écrit :

en static => la fonction est local, et n'est donc pas visible de l'exterieur de l'unité de compilation, donc le linker peut prendre 2 fonctions static du meme nom dans 2 unités de compilation différentes c bien ca ?


 
En static le linker ne vera jamais me symbole de la fonction donc tout devrait aller.

n°819011
blackgodde​ss
vive le troll !
Posté le 10-08-2004 à 15:10:32  profilanswer
 

je peux pas me permettre de tout mettre en statique, en effet des fonctions sont utilisées dans plusieurs fichiers :/
 
sinon, je pensais peut-etre a un autre moyen (je ne sais pas si c'est possible)
 
compiler une partie du projet en librairie statique, cette librairie n'exportant que certaines fonctions
puis lier cette librairie au reste du projet ?
 
je sais que c'est possible sous windows, mais la je suis avec gcc sous linux, est-ce egalement possible ? si oui, ou je pourrait trouver de la doc la dessus ?


---------------
-( BlackGoddess )-
n°819849
leneuf22
Posté le 11-08-2004 à 00:15:41  profilanswer
 

Pacool pour la maintenance et pour la lisibilité ... !
 
Tu mets en static ce qui est local à un seul fichier
pas la peine de mettre tout static dans chaque fichier.
 
ex : si une fonction est utilisée dans plusieurs fichiers, tu ne la déclares pas static. Si une autre fonction à le même nom, si elle est locale à son fichier, ça marchera si tu déclares cette dernière static.
 
Après si tu as deux fonctions non locales qui ont le même nom, ben ya pas de solution simple.
Sauf les renommer (et ça serait mieux pour la lisibilité de ton code...)


Message édité par leneuf22 le 11-08-2004 à 00:16:09
n°819870
blackgodde​ss
vive le troll !
Posté le 11-08-2004 à 00:45:01  profilanswer
 

oui oui la solution static était déjà épuisée ...
 
donc je me suis lancé dans le renommage de fonction.


---------------
-( BlackGoddess )-

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  conflit de noms ?

 

Sujets relatifs
recuperer les noms des colonnes d'une table (database)récupérer les noms et url d'un dossier
incrementation dans les noms de variablesVisualiser les tables sans connaitre leur noms...
[c] enregistrement des noms des fichiers dans un tableauIndirection pour des noms de variables
changer la casse des noms de fichiers sous DOShelp des noms de serveurs gratuit please
[C] problemes de lecture dans un fichier des noms de fichiers à ouvrir[ASP][ACCESS]Récupérer les noms des champs d'une BD
Plus de sujets relatifs à : conflit de noms ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR