<?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[Linker, mehrfach definiertes Symbol Problem]]></title><description><![CDATA[<p>Hey</p>
<p>Ich komme mal wieder nicht weiter.<br />
Ich habe diese Headerdatei:</p>
<pre><code class="language-cpp">#ifndef _MAP_H
#define _MAP_H 

const int MAP_WIDTH = 20;
const int MAP_HEIGHT = 20;
const int MAP_SCALL = 10;

int map[ MAP_WIDTH * MAP_HEIGHT ] = 
{
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,   // 00
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 01
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 02
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 03
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 04
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 05
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 06
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 07
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 08
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 09
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 10
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 11
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 12
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 13
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 14
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 15
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 16
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 17
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 18
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,   // 19

};
#endif
</code></pre>
<p>Diese Headerdatei Include ich nun in 2 meiner Quelldateinen, worin sich jeweils definitionen von Memberfunktionen der jeweiligen Klasse befindet(Fals nötig kann ich diese auch posten!).</p>
<p>Der Linker meldet mir nun eine Fehler, dass &quot;int map&quot; bereits efiniert sei.</p>
<p>Jemand ne Idee, was ich verkehrt mache ?</p>
<p>mfg Darter</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/288147/linker-mehrfach-definiertes-symbol-problem</link><generator>RSS for Node</generator><lastBuildDate>Thu, 20 Aug 2026 03:16:14 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/288147.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 11 Jun 2011 09:15:12 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Linker, mehrfach definiertes Symbol Problem on Sat, 11 Jun 2011 09:15:52 GMT]]></title><description><![CDATA[<p>Hey</p>
<p>Ich komme mal wieder nicht weiter.<br />
Ich habe diese Headerdatei:</p>
<pre><code class="language-cpp">#ifndef _MAP_H
#define _MAP_H 

const int MAP_WIDTH = 20;
const int MAP_HEIGHT = 20;
const int MAP_SCALL = 10;

int map[ MAP_WIDTH * MAP_HEIGHT ] = 
{
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,   // 00
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 01
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 02
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 03
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 04
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 05
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 06
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 07
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 08
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 09
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 10
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 11
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 12
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 13
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 14
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 15
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 16
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 17
        1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,1,   // 18
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,   // 19

};
#endif
</code></pre>
<p>Diese Headerdatei Include ich nun in 2 meiner Quelldateinen, worin sich jeweils definitionen von Memberfunktionen der jeweiligen Klasse befindet(Fals nötig kann ich diese auch posten!).</p>
<p>Der Linker meldet mir nun eine Fehler, dass &quot;int map&quot; bereits efiniert sei.</p>
<p>Jemand ne Idee, was ich verkehrt mache ?</p>
<p>mfg Darter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076645</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076645</guid><dc:creator><![CDATA[Darter]]></dc:creator><pubDate>Sat, 11 Jun 2011 09:15:52 GMT</pubDate></item><item><title><![CDATA[Reply to Linker, mehrfach definiertes Symbol Problem on Sat, 11 Jun 2011 09:20:58 GMT]]></title><description><![CDATA[<p>Das File sieht korrekt aus. Die Include-Guards wurden richtig gesetzt.</p>
<p>EDIT: Das ist wahrscheinlich das Header-File. In Headern deklariert man Variablen eigentlich. Du definierst und initialisierst sie jedoch!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076647</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076647</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Sat, 11 Jun 2011 09:20:58 GMT</pubDate></item><item><title><![CDATA[Reply to Linker, mehrfach definiertes Symbol Problem on Sat, 11 Jun 2011 09:20:11 GMT]]></title><description><![CDATA[<p>hast du mal einen namespace probiert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076648</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076648</guid><dc:creator><![CDATA[BigNeal]]></dc:creator><pubDate>Sat, 11 Jun 2011 09:20:11 GMT</pubDate></item><item><title><![CDATA[Reply to Linker, mehrfach definiertes Symbol Problem on Sat, 11 Jun 2011 09:22:55 GMT]]></title><description><![CDATA[<p>Deklaration, Definition und Initialisierung:</p>
<pre><code class="language-cpp">extern int a; //Deklaration
int a; //Definition
int a = 3; //Definition und Initialisierung
</code></pre>
<p>Und der ganze Spass (ausser das Zweite) geht auch mit Konstanten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076650</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076650</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Sat, 11 Jun 2011 09:22:55 GMT</pubDate></item><item><title><![CDATA[Reply to Linker, mehrfach definiertes Symbol Problem on Sat, 11 Jun 2011 09:24:25 GMT]]></title><description><![CDATA[<p>EOutOfResources schrieb:</p>
<blockquote>
<p>EDIT: Das ist wahrscheinlich das Header-File. In Headern deklariert man Variablen eigentlich. Du definierst und initialisierst sie jedoch!</p>
</blockquote>
<p>GEnau das dürfte das Problem sein.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/24620">@Darter</a>: Die Lösung sieht so aus, daß du die Definition in eine deiner Quelldateien verschiebst und in den Header nur ein <code>extern int map[MAP_WIDTH*MAP_HEIGHT];</code> schreibst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076651</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076651</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 11 Jun 2011 09:24:25 GMT</pubDate></item><item><title><![CDATA[Reply to Linker, mehrfach definiertes Symbol Problem on Sat, 11 Jun 2011 09:58:51 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>EOutOfResources schrieb:</p>
<blockquote>
<p>EDIT: Das ist wahrscheinlich das Header-File. In Headern deklariert man Variablen eigentlich. Du definierst und initialisierst sie jedoch!</p>
</blockquote>
<p>GEnau das dürfte das Problem sein.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/24620">@Darter</a>: Die Lösung sieht so aus, daß du die Definition in eine deiner Quelldateien verschiebst und in den Header nur ein <code>extern int map[MAP_WIDTH*MAP_HEIGHT];</code> schreibst.</p>
</blockquote>
<p>Hey.</p>
<p>Danke, so funktioniert es auf jeden fall, aber ist dass dein eine &quot;saubere&quot; Art und Weise sowas zu lösen ?</p>
<p>mfg Darter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076662</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076662</guid><dc:creator><![CDATA[Darter]]></dc:creator><pubDate>Sat, 11 Jun 2011 09:58:51 GMT</pubDate></item><item><title><![CDATA[Reply to Linker, mehrfach definiertes Symbol Problem on Sat, 11 Jun 2011 10:03:51 GMT]]></title><description><![CDATA[<p>Darter schrieb:</p>
<blockquote>
<p>ist dass dein eine &quot;saubere&quot; Art und Weise sowas zu lösen ?</p>
</blockquote>
<p>Das ist <strong>die</strong> saubere Art. Deine Alte ist Müll.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076663</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076663</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Sat, 11 Jun 2011 10:03:51 GMT</pubDate></item><item><title><![CDATA[Reply to Linker, mehrfach definiertes Symbol Problem on Sat, 11 Jun 2011 10:04:50 GMT]]></title><description><![CDATA[<p>Ja, ist es, zumindest was die Definition und Einhaltung der ODR angeht. Du hast schließlich nur eine Map, also brauchst du auch nur eine Definition dafür.</p>
<p>Echt sauber wird es erst, wenn du auf globale Variablen verzichtest (und das nackte Array durch einen vernünftigen Container ersetzt). Aber das dürfte etwaf mehr Aufwand im Rest des Programms bedeuten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076665</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076665</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 11 Jun 2011 10:04:50 GMT</pubDate></item></channel></rss>