<?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[Frage zu Headern]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe folgendes Problem; auf das Einfachste reduziert habe ich drei Dateien:</p>
<ul>
<li>client.cpp</li>
<li>filesys.h</li>
<li>filesys.cpp</li>
</ul>
<p>Nun entspricht der Inhalt von filesys.h Folgendem:</p>
<pre><code>[...]
#define DEFAULT_WORKDIR &quot;C:\\&quot;
extern string workdir;
[...]
</code></pre>
<p>Der Inhalt von filesys.cpp:</p>
<pre><code>[...]
#include &quot;filesys.h&quot;
string workdir = DEFAULT_WORKDIR;
[...]
</code></pre>
<p>Und der von client.cpp:</p>
<pre><code>[...]
#include &quot;filesys.h&quot;
[...]
</code></pre>
<p>Nun erhalte ich vom Linker folgende Fehlermeldung: <strong>multiple definition of 'workdir'</strong><br />
Ich habe bereits viel rumprobiert und rumgeschrieben, aber eigentlich denke ich, dass es so, wie ich es hier wiedergegeben habe, richtig sein müsste. Kann mir jemand den Denkfehler aufzeigen?</p>
<p>Mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/160930/frage-zu-headern</link><generator>RSS for Node</generator><lastBuildDate>Fri, 11 Sep 2026 17:29:05 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/160930.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 01 Oct 2006 13:16:12 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Frage zu Headern on Sun, 01 Oct 2006 13:16:12 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe folgendes Problem; auf das Einfachste reduziert habe ich drei Dateien:</p>
<ul>
<li>client.cpp</li>
<li>filesys.h</li>
<li>filesys.cpp</li>
</ul>
<p>Nun entspricht der Inhalt von filesys.h Folgendem:</p>
<pre><code>[...]
#define DEFAULT_WORKDIR &quot;C:\\&quot;
extern string workdir;
[...]
</code></pre>
<p>Der Inhalt von filesys.cpp:</p>
<pre><code>[...]
#include &quot;filesys.h&quot;
string workdir = DEFAULT_WORKDIR;
[...]
</code></pre>
<p>Und der von client.cpp:</p>
<pre><code>[...]
#include &quot;filesys.h&quot;
[...]
</code></pre>
<p>Nun erhalte ich vom Linker folgende Fehlermeldung: <strong>multiple definition of 'workdir'</strong><br />
Ich habe bereits viel rumprobiert und rumgeschrieben, aber eigentlich denke ich, dass es so, wie ich es hier wiedergegeben habe, richtig sein müsste. Kann mir jemand den Denkfehler aufzeigen?</p>
<p>Mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1147392</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1147392</guid><dc:creator><![CDATA[the*V*oid]]></dc:creator><pubDate>Sun, 01 Oct 2006 13:16:12 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu Headern on Sun, 01 Oct 2006 13:28:23 GMT]]></title><description><![CDATA[<p>das ist ganz einfach, in filesys.cpp musst du das &quot;string&quot; wegnehmen. workdir wurde schon in filesys.h als string so definiert, dass die definition auch in den dateien gilt, die filesys.h includen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1147399</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1147399</guid><dc:creator><![CDATA[PeterBücherwurm]]></dc:creator><pubDate>Sun, 01 Oct 2006 13:28:23 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu Headern on Sun, 01 Oct 2006 20:38:12 GMT]]></title><description><![CDATA[<p>PeterBücherwurm schrieb:</p>
<blockquote>
<p>das ist ganz einfach, in filesys.cpp musst du das &quot;string&quot; wegnehmen. workdir wurde schon in filesys.h als string so definiert, dass die definition auch in den dateien gilt, die filesys.h includen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p><div class="plugin-markdown"><input type="checkbox" id="checkbox185826" /><label for="checkbox185826">Du hast Ahnung.</label></div></p>
<p>Eine extern-Deklaration sagt dem Compiler nur dass es zur Link-Zeit so ein Objekt geben wird. Eine Definition (und die ist nur mit Datentyp vollständig) muss trotzdem genau einmal vorhanden sein.</p>
<p>@OP: Dein Code ist so korrekt. Der Fehler muss noch irgendwo anders liegen. Hast Du die .cpp evtl. mehrfach in Deinem Projekt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1147637</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1147637</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Sun, 01 Oct 2006 20:38:12 GMT</pubDate></item></channel></rss>