begin process at 2012 05 29 07:02:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Inclusion d'un header dans plusieur fichier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Inclusion d'un header dans plusieur fichier

lundi 28 mars 2005 à 19:04:24 | Inclusion d'un header dans plusieur fichier

Pinky84

J'ai un header qui defini quelque prototype. Lorsque je l'include dans plusieur cpp, ca genere une erreur lorsqu'il link. Comment faire pour avoir un header avec des prototype inclu dans plusieur fichier?

Merci d'avance

Pinky84
lundi 28 mars 2005 à 19:37:55 | Re : Inclusion d'un header dans plusieur fichier

vecchio56

Administrateur CodeS-SourceS
Au début de ton header

#ifndef FICHIER_H
#define FICHIER_H

// tes déclarations

#endif

Comme ca tu es sur que ton fichier n'est inclus qu'une fois
lundi 28 mars 2005 à 20:28:42 | Re : Inclusion d'un header dans plusieur fichier

Pinky84

J'avais deja fait ca... je comprend pas trop le probleme.. il n'y a pas que des prototype de function dans mon h, il y a quelque typedef, des declaration de variable.. etc. mais quand il link il dit 'Already defined' juste pour les function.
lundi 28 mars 2005 à 20:38:53 | Re : Inclusion d'un header dans plusieur fichier

steve_clamage

C'est normal qu'il y ai de mutiples définitions si du défini des fonctions non template et non inline dans un header, elles doivent etre définient dans un .cpp.

La règle (pour les variables comme pour les fonctions) c'est de multiples déclarations (jusqu'à une par unité de compilation) mais  une seule définition.
lundi 28 mars 2005 à 21:05:02 | Re : Inclusion d'un header dans plusieur fichier

Pinky84

c'est pourtant ce que j'ai fais (je crois).. enfin.. si vous voulez bien jeter un coup d'oeil:

#ifndef UXTHEME_H
#define UXTHEME_H

#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0501
#endif

#include <windows.h>
#include <commctrl.h>
#include <uxtheme.h>
#include <tmschema.h>

typedef HRESULT (WINAPI *LPCLOSETHEMEDATA)(HTHEME);
typedef HRESULT (WINAPI *LPDRAWTHEMEBACKGROUND)  (HTHEME, HDC, int, int, const RECT *, const RECT *);
typedef HRESULT (WINAPI *LPDRAWTHEMEPARENTBACKGROUND) (HWND, HDC, RECT *);
typedef HRESULT (WINAPI *LPGETBACKGROUNDCONTENTRECT) (HTHEME, HDC, int, int, const RECT *, RECT *);
typedef BOOL (WINAPI *LPISTHEMEBACKGROUNDPARTIALLYTRANSPARENT) (HTHEME, int, int);
typedef HTHEME    (WINAPI *LPOPENTHEMEDATA) (HWND, LPCWSTR);

HMODULE g_hUxTheme = NULL;

LPCLOSETHEMEDATA gp_CloseThemeData = NULL;
LPDRAWTHEMEBACKGROUND gp_DrawThemeBackground = NULL;
LPDRAWTHEMEPARENTBACKGROUND gp_DrawThemeParentBackground = NULL;
LPGETBACKGROUNDCONTENTRECT gp_GetBackgroundContentRect = NULL;
LPISTHEMEBACKGROUNDPARTIALLYTRANSPARENT gp_IsThemeBackgroundPartiallyTransparent = NULL;
LPOPENTHEMEDATA gp_OpenThemeData = NULL;

extern HRESULT _CloseThemeData(HTHEME hTheme);
extern HRESULT _DrawThemeBackground(HTHEME hTheme, HDC hDc, int iPartId, int iState, const RECT *p_rcRect, const RECT *p_rcClip);
extern HRESULT _DrawThemeParentBackground(HWND hWndControl, HDC hDcControl, RECT *p_rcRect);
extern HRESULT _GetBackgroundContentRect(HTHEME hTheme, HDC hDc, int iPartId, int iState, const RECT *p_rcBound, RECT *p_rcContent);
extern BOOL _IsThemeBackgroundPartiallyTransparent(HTHEME hTheme, int iPartId, int iState);
extern HTHEME _OpenThemeData(HWND hWndControl, LPCWSTR pszClassList);

#endif
mardi 29 mars 2005 à 10:51:02 | Re : Inclusion d'un header dans plusieur fichier

ymca2003

Réponse acceptée !

Ne déclare JAMAIS des variables dans une entêtes, au pire met les extern sans init. Mais les déclararions et init dans un .c ou .cpp. Fait déjà cela, si ca se trouve ça suffira.

Le _ devant le nom des fonctions est-il bien également dans les noms de fonctions du .c ou .cpp ?

mardi 29 mars 2005 à 14:50:52 | Re : Inclusion d'un header dans plusieur fichier

Pinky84

Oui il y a le _ devant les nom de unction dans le cpp. Et oui ca a suffi. Ca compile maintenant

Merci


Cette discussion est classée dans : fichier, header, plusieur, inclusion, prototype


Répondre à ce message

Sujets en rapport avec ce message

Fichier Header [important] [ par TontOnDuWeb ] je voudrais savoir si chez vous le fichier CONIO.H contient bien les fonctions suivantes : "clrsrc - textbackground - etc... " si oui merci ouverture de fichier de texture en .BMP [ par steph76 ] voila je developement en ce moment mon moteur3d pour 1 jeux.Le probleme c'est la fonction d'ouverture de fichier.BMP. Elle fonctionne trés bien sur la écriture d'un bmp [ par khayyam ] salut, j'essaie d'écrire des fichiers bmp mais j'ai quelques soucis#define CTOI(C) (*(int*)&C) #define largeur 100#define hauteur 100int main(int ar Vérifier un header de fichier... [ par MorZong ] Salut,Voilà j'ai créer un programme (simple, pas avec API) de cryptage tout simple et je voudrais qu'il ait sont propre genre de fichier. Alors j'ai m steganographie C [ par trypon ] Bonjour je programme sous ggcc (LINUX) et j'ai un petit pb avec mon programme j'arrive a mettre un texte dans l'image mais pas à faire le contrairela Inclusion de fichier en C [ par Kevin972 ] salut a tous!!!!g un probleme d'inclusion de fichier....je travail en multiplatforme et g f deux fonctions de scan 1 pour win32 l'autre pour unix.mon Header d'un fichier MPEG-2 [ par belkin ] Bonjour, Je suis à la recherche d'informations sur le header d'un fichier MPEG-2. Quelqu'un aurait des infos svp ? Je dois récupérer la taille, longue fichier de jeux [ par mistere ] Salut a tous.Jai une petite question qui reste sans reponse.Voila jai un jeux avec des fichier d'une certaine extension qui  renferme plusieur fichier Question pour les cracks !! [ par spiky31 ] Bonjour J'ai une question difficile a mon avis mais je vais quand meme essayer : Quand je lit le header d'un fichier mp3 pour connaitre son bitrate creation d'un fichier avi avec plusieur avi [ par gregbds ] bonjour je voudrais créer un fichier video avi à partir de plusieur morceaux de fichier avi mis bout à bout. Je recherche se petit programme pour l'in


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales