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

  FORUM HardWare.fr
  Programmation
  C++

  extern fonction

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

extern fonction

n°442730
mbibim
Posté le 28-06-2003 à 18:56:34  profilanswer
 

salut
 
j'ai déclaré une fonction dans mon main.cpp et je voudrais l'appeler dans un autre fichier cpp.
Si j'inclue main.cpp dans ce fichier ca créé des erreurs de liens. Donc je voulais la déclarer en fonction extern :
 
dans le main (déclaration)
 
extern void toto()
...
 
dans mon fichier (appel)
 
extern toto();
 
mais ca marche pas. Si quelqu'un peut m'aider.
 
merci
 
bi²

mood
Publicité
Posté le 28-06-2003 à 18:56:34  profilanswer
 

n°442732
Taz
bisounours-codeur
Posté le 28-06-2003 à 18:59:26  profilanswer
 

extern c'est pour les variables, c'est pas le problème. il te faut quelque chose pour exporter la déclaration de ta fonction. soi tu recopies le proto à la main, soi tu fais un .h(pp)

n°442778
Ace17
Posté le 28-06-2003 à 20:06:02  profilanswer
 

Code :
  1. // Main.cpp
  2. void MaFonction()
  3. {
  4. };


 

Code :
  1. // Fichier.cpp
  2. void MaFonction():
  3. void UneAutreFonction()
  4. {
  5.    MaFonction();
  6. }

n°442947
LeGreg
Posté le 29-06-2003 à 03:43:03  profilanswer
 

Par defaut toutes les fonctions ont un nom de portée extern, si tu veux l'eviter il faut les definir comme static. (aucun rapport mais c'est malheureusement comme ca).
 
Pour utiliser une fonction en C++, tu n'as pas besoin de la definition complete un simple prototype en avant de l'utilisation suffit (sans mot clé extern..). En C, tu n'as meme pas besoin du prototype en avant mais c'est deconseillé de ne pas le mettre (declaration implicite, il va choisir le type de retour int par defaut).
 
Pour ce qui est de l'utilisation des membres de classe, tu as la besoin de la definition complete (sans le code bien entendu) de ta classe au prealable. Il n'est pas possible de changer la portee du nom en C++ comme avec les fonctions globales. Le seul  moyen de cacher les methodes d'une classe aux autres modules c'est d'utiliser les namespace anonymes.
 
A+
LeGreg


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

  extern fonction

 

Sujets relatifs
'const' a quoi sert ca sert dans une fonction[PHP] fonction split et exp reg
Fonction équivalente au decode de Oracle?Fonction SaveToFile
Fonction trim ?[Fonction WEB] Exemple site Msn.fr : News défilantes
Existe t'il en C un fonction md5() comme en PHP[PHP] Passer un paramètre à une fonction
La fonction confirm en JavaScript ?[C] fonction extern déclaré dans les .h
Plus de sujets relatifs à : extern fonction


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