Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » #include treibt mich in den Wahnsinn

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ] [ 3 ]
000
19.02.2005, 01:08 Uhr
~Fox
Gast


Gute Nacht!
Ich habe etliche Zeilen Code (~500), welche immer wieder eine Headerdatei includieren (queue.h) in ihr befindet sich eine Struktur Definition und einige Funktions Definitionen:

C++:
struct queue
{
void **queue;
unsigned int queuec;
};

Nun spukt der GCC aber das hier aus:

Code:
In file included from include/main.h:22,
                 from config.c:26:
include/queue.h:22: Fehler: Redefinition von »struct queue«
In file included from config.c:28:
include/queue.h:22: Fehler: Redefinition von »struct queue«
In file included from include/regex.h:21,
                 from config.c:29:
include/queue.h:22: Fehler: Redefinition von »struct queue«


Die Header in /usr/include definieren ja auch teilweise Strukturen, doch da bekomme ich keinen Fehler. Ich bin total am Ende, aber ich denke das kann kein großer Fehler sein (vielleicht bin ich zu müde).

Danke für die Hilfe
Fox
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
19.02.2005, 01:49 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


pack in jeden deiner header einen includeguard

C++:
#ifndef HEADERNAME_H
#define HEADERNAME
//hier den header rein
#endif


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
19.02.2005, 12:59 Uhr
~Fox
Gast



Zitat von Windalf:
pack in jeden deiner header einen includeguard

C++:
#ifndef HEADERNAME_H
#define HEADERNAME
//hier den header rein
#endif



Kann man das auch irgendwie automatisieren?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
19.02.2005, 13:17 Uhr
Pablo
Supertux
(Operator)


was meinst du mit automatisieren?
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 19.02.2005 um 13:17 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
19.02.2005, 13:35 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

Kann man das auch irgendwie automatisieren?


ja schreib ein programm das das macht...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
19.02.2005, 13:36 Uhr
enno-tyrant
Frag nicht!


schreib dir ein programm das dir die header erzeugt, oder was meinst du mit 'automatisieren'?
--
...um etwas zu verstehen muß man wissen wie es funktioniert...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
19.02.2005, 13:49 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


@enno
hehe hat dich die frage auch ein wenig verwirrt...?
was soll man da schon für ne antwort drauf geben
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
19.02.2005, 13:52 Uhr
enno-tyrant
Frag nicht!


@Windalf
ist auch wirklich ein wehig _eigenartig_ gestell worden. wie ich gerade erkennen muß war ich beim antworten mal wieder zu langsam
--
...um etwas zu verstehen muß man wissen wie es funktioniert...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
19.02.2005, 18:21 Uhr
~Fox
Gast


Ich will bloß wissen, ob man anstatt
Code:
#ifndef HEADERNAME_H
#define HEADERNAME
//hier den header rein
#endif

nicht
Code:
#include ...
schreiben kann und der Compiler entscheidet ob die Datei schon includiert wurde.

Dieser Post wurde am 19.02.2005 um 18:21 Uhr von Fox editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
19.02.2005, 18:50 Uhr
Pablo
Supertux
(Operator)


der compiler kann das entscheiden, wenn es die Header Guardas gibt, d.h. wenn die -h Datei den #ifndef HEADERNAME_H Kramm hat. Dann funktioniert das mit dem include
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ] [ 3 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: