<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Mehrfach definition in Headerdatei verhindern]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich habe mir ne Header Datei geschrieben in der ich Globale Variablen definiere. Beim Compilieren erscheint keine Fehlermeldung, aber wenn ich das Programm ausführen will, erscheint die Meldung<br />
&quot;error LNK2005: &quot;struct Pos * Pos_MenueTaste&quot; (?Pos_MenueTaste@@3PAUPos@@A) already defined in Global.obj&quot; und die Meldung &quot;emulatorDbg/Touch_V1.exe : fatal error LNK1169: one or more multiply defined symbols found&quot;.</p>
<p>Ich dachte eigentlich, dass das #ifndef eine mehrfach definieren verhindert.</p>
<p>Meine Header Datei sieht folgendermaßen aus:</p>
<pre><code class="language-cpp">/*- Preprocessor directives and compiler switches -------------------------*/
#ifndef __Global_H__
#define __Global_H__  // include once only ...

//--------------------------------------------------------------------------
//define's

//Menütasten
#define MENUE_TASTE_LUEFTER			0
#define MENUE_TASTE_BLASROHR		1
#define MENUE_TASTE_BOGENGLAETTER	2
#define	MENUE_TASTE_UEBERSICHT		3

//Funktionstasten
#define FKT_TASTE_ABWAHL			0
#define FKT_TASTE_SUMME				1
#define FKT_TASTE_UP				2
#define	FKT_TASTE_DOWN				3

//---------------------------------------------------------------------------
//Strukturen

//Struktur zum Speichern von Positionen z.B. Bitmaps (linke obere Ecke)
typedef struct 
{
	unsigned int top;
	unsigned int left;
} Pos;

Pos Pos_MenueTaste[3];	
Pos Pos_FktTaste[3];	
void InitGlobal ();

#endif //__Global_H__
</code></pre>
<p>Weis jemand was ich falsch mache oder wie ich es besser machen kann.</p>
<p>Gruß<br />
spacehelix</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/150915/mehrfach-definition-in-headerdatei-verhindern</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Jul 2026 19:45:05 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/150915.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 21 Jun 2006 12:29:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Mehrfach definition in Headerdatei verhindern on Wed, 21 Jun 2006 12:33:45 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich habe mir ne Header Datei geschrieben in der ich Globale Variablen definiere. Beim Compilieren erscheint keine Fehlermeldung, aber wenn ich das Programm ausführen will, erscheint die Meldung<br />
&quot;error LNK2005: &quot;struct Pos * Pos_MenueTaste&quot; (?Pos_MenueTaste@@3PAUPos@@A) already defined in Global.obj&quot; und die Meldung &quot;emulatorDbg/Touch_V1.exe : fatal error LNK1169: one or more multiply defined symbols found&quot;.</p>
<p>Ich dachte eigentlich, dass das #ifndef eine mehrfach definieren verhindert.</p>
<p>Meine Header Datei sieht folgendermaßen aus:</p>
<pre><code class="language-cpp">/*- Preprocessor directives and compiler switches -------------------------*/
#ifndef __Global_H__
#define __Global_H__  // include once only ...

//--------------------------------------------------------------------------
//define's

//Menütasten
#define MENUE_TASTE_LUEFTER			0
#define MENUE_TASTE_BLASROHR		1
#define MENUE_TASTE_BOGENGLAETTER	2
#define	MENUE_TASTE_UEBERSICHT		3

//Funktionstasten
#define FKT_TASTE_ABWAHL			0
#define FKT_TASTE_SUMME				1
#define FKT_TASTE_UP				2
#define	FKT_TASTE_DOWN				3

//---------------------------------------------------------------------------
//Strukturen

//Struktur zum Speichern von Positionen z.B. Bitmaps (linke obere Ecke)
typedef struct 
{
	unsigned int top;
	unsigned int left;
} Pos;

Pos Pos_MenueTaste[3];	
Pos Pos_FktTaste[3];	
void InitGlobal ();

#endif //__Global_H__
</code></pre>
<p>Weis jemand was ich falsch mache oder wie ich es besser machen kann.</p>
<p>Gruß<br />
spacehelix</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082062</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082062</guid><dc:creator><![CDATA[spacehelix]]></dc:creator><pubDate>Wed, 21 Jun 2006 12:33:45 GMT</pubDate></item><item><title><![CDATA[Reply to Mehrfach definition in Headerdatei verhindern on Wed, 21 Jun 2006 15:50:43 GMT]]></title><description><![CDATA[<p>global.h</p>
<pre><code class="language-cpp">//...
extern Pos Pos_MenueTaste[3];	
extern Pos Pos_FktTaste[3];	
//...
</code></pre>
<p>globals.cpp</p>
<pre><code class="language-cpp">#include &quot;global.h&quot;
//...
Pos Pos_MenueTaste[3];	
Pos Pos_FktTaste[3];	
//...
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1082224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082224</guid><dc:creator><![CDATA[ssm]]></dc:creator><pubDate>Wed, 21 Jun 2006 15:50:43 GMT</pubDate></item><item><title><![CDATA[Reply to Mehrfach definition in Headerdatei verhindern on Thu, 22 Jun 2006 07:11:16 GMT]]></title><description><![CDATA[<p>Hallo ssm,</p>
<p>Vielen Dank für die Hilfe, es Funktioniert jetzt.</p>
<p>Gruß<br />
spacehelix</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082655</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082655</guid><dc:creator><![CDATA[spacehelix]]></dc:creator><pubDate>Thu, 22 Jun 2006 07:11:16 GMT</pubDate></item></channel></rss>