<?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[#ifndef #define weigern sich - Bin ich bekloppt?!?!?]]></title><description><![CDATA[<p>Hallo,<br />
ich habe ein recht einfaches Programm.<br />
2 *.cpp Dateien greifen jede auf ein und dieselbe Header-Datei zu. Da beide die gleiche, dort definierte Klasse benötigen, ist mir nichts besseres eingefallen. In besagtem Header steht (unter anderem) folgender Text:</p>
<pre><code class="language-cpp">#ifndef VARIABLEN_H
#define VARIABLEN_H
class feld //Definition der Speicherstruktur eines einzelnen Punktes
{
public:
	int id;
	int x;
	int y;
	double z;
	int empf_feld_id;
	int entw;
};
feld *feldZeiger; //Initialisierung des Zeigers
#endif
</code></pre>
<p>Der Compiler kommentiert das mit</p>
<blockquote>
<p>1&gt;DGM_Analyse.obj : error LNK2005: &quot;class feld * feldZeiger&quot; (?feldZeiger@@3PAVfeld@@A) ist bereits in Main.obj definiert.</p>
</blockquote>
<p>Ich führe das darauf zurück, dass hier irgendwas mit mit #ifndef nicht klappt, denn in DGM_Analyse, der fehlerproduzierenden Datei, wird (naürlich) kein class feld*feldZeiger (abgesehen vom Header) mehr definiert.<br />
Falls noch mehr Code benötigt wird, kann ich den gerne zur Verfügung stellen.<br />
Danke und Grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/264634/ifndef-define-weigern-sich-bin-ich-bekloppt</link><generator>RSS for Node</generator><lastBuildDate>Fri, 04 Sep 2026 16:50:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/264634.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 10 Apr 2010 12:43:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to #ifndef #define weigern sich - Bin ich bekloppt?!?!? on Sat, 10 Apr 2010 12:43:30 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich habe ein recht einfaches Programm.<br />
2 *.cpp Dateien greifen jede auf ein und dieselbe Header-Datei zu. Da beide die gleiche, dort definierte Klasse benötigen, ist mir nichts besseres eingefallen. In besagtem Header steht (unter anderem) folgender Text:</p>
<pre><code class="language-cpp">#ifndef VARIABLEN_H
#define VARIABLEN_H
class feld //Definition der Speicherstruktur eines einzelnen Punktes
{
public:
	int id;
	int x;
	int y;
	double z;
	int empf_feld_id;
	int entw;
};
feld *feldZeiger; //Initialisierung des Zeigers
#endif
</code></pre>
<p>Der Compiler kommentiert das mit</p>
<blockquote>
<p>1&gt;DGM_Analyse.obj : error LNK2005: &quot;class feld * feldZeiger&quot; (?feldZeiger@@3PAVfeld@@A) ist bereits in Main.obj definiert.</p>
</blockquote>
<p>Ich führe das darauf zurück, dass hier irgendwas mit mit #ifndef nicht klappt, denn in DGM_Analyse, der fehlerproduzierenden Datei, wird (naürlich) kein class feld*feldZeiger (abgesehen vom Header) mehr definiert.<br />
Falls noch mehr Code benötigt wird, kann ich den gerne zur Verfügung stellen.<br />
Danke und Grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1880496</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1880496</guid><dc:creator><![CDATA[FlashMuller]]></dc:creator><pubDate>Sat, 10 Apr 2010 12:43:30 GMT</pubDate></item><item><title><![CDATA[Reply to #ifndef #define weigern sich - Bin ich bekloppt?!?!? on Sat, 10 Apr 2010 12:48:48 GMT]]></title><description><![CDATA[<p>Include Guards schuetzen vor multiplen Definitionen innerhalb einer Uebersetzungs Einheit. Du hast aber ein Problem mit der <a href="http://en.wikipedia.org/wiki/One_Definition_Rule" rel="nofollow">One Definition Rule</a>.</p>
<p>Die Loesung ist <code>feld *feldZeiger;</code> aus der header Datei in eine Implementierungsdatei (.cpp Datei) zu ziehen und im Header nur die Deklaration stehen zu lassen:</p>
<pre><code class="language-cpp">exten feld *feldZeiger;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1880498</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1880498</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Sat, 10 Apr 2010 12:48:48 GMT</pubDate></item><item><title><![CDATA[Reply to #ifndef #define weigern sich - Bin ich bekloppt?!?!? on Sat, 10 Apr 2010 16:11:14 GMT]]></title><description><![CDATA[<p>Vielen dank, werde ich mich im Laufe des Sonntags mit auseinandersetzen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1880626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1880626</guid><dc:creator><![CDATA[FlashMuller]]></dc:creator><pubDate>Sat, 10 Apr 2010 16:11:14 GMT</pubDate></item></channel></rss>