<?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[Klassen-header in mehreren Übersetzungseinheiten]]></title><description><![CDATA[<p>Hallo,<br />
ich habe folgende Header/Source-file Struktur:</p>
<p>unit1.cpp --includes--&gt; lib.hpp</p>
<p>unit2.cpp --includes--&gt; lib.hpp</p>
<p>lib.hpp: ist der &quot;Haupt-header&quot; einer library und stellt Definitionen für mehrere Klassen/Funktionen... bereit.</p>
<p>unit1 und unit2 greifen jetzt auf einige dieser Klassen/Funktionen... zu.<br />
Das Problem:<br />
beim kompilieren erhalte ich &quot;multiple definition&quot; errors. Mir ist klar, dass ich, wenn ich den gleichen header in mehreren Übersetzungseinheiten benutzen will, extern benutzen muss.<br />
Extern funktioniert nur leider nicht mit Klassen.<br />
Was muss ich jetzt also machen?<br />
Bin ich blind?<br />
Mfg, awds</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/204148/klassen-header-in-mehreren-übersetzungseinheiten</link><generator>RSS for Node</generator><lastBuildDate>Thu, 08 Oct 2026 07:57:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/204148.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 30 Jan 2008 17:03:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klassen-header in mehreren Übersetzungseinheiten on Wed, 30 Jan 2008 17:03:26 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich habe folgende Header/Source-file Struktur:</p>
<p>unit1.cpp --includes--&gt; lib.hpp</p>
<p>unit2.cpp --includes--&gt; lib.hpp</p>
<p>lib.hpp: ist der &quot;Haupt-header&quot; einer library und stellt Definitionen für mehrere Klassen/Funktionen... bereit.</p>
<p>unit1 und unit2 greifen jetzt auf einige dieser Klassen/Funktionen... zu.<br />
Das Problem:<br />
beim kompilieren erhalte ich &quot;multiple definition&quot; errors. Mir ist klar, dass ich, wenn ich den gleichen header in mehreren Übersetzungseinheiten benutzen will, extern benutzen muss.<br />
Extern funktioniert nur leider nicht mit Klassen.<br />
Was muss ich jetzt also machen?<br />
Bin ich blind?<br />
Mfg, awds</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1446495</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1446495</guid><dc:creator><![CDATA[awds]]></dc:creator><pubDate>Wed, 30 Jan 2008 17:03:26 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen-header in mehreren Übersetzungseinheiten on Wed, 30 Jan 2008 17:08:07 GMT]]></title><description><![CDATA[<p>Zeig mal die lib.hpp.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1446503</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1446503</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 30 Jan 2008 17:08:07 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen-header in mehreren Übersetzungseinheiten on Wed, 30 Jan 2008 17:15:58 GMT]]></title><description><![CDATA[<p>awds schrieb:</p>
<blockquote>
<p>Das Problem:<br />
beim kompilieren erhalte ich &quot;multiple definition&quot; errors. Mir ist klar, dass ich, wenn ich den gleichen header in mehreren Übersetzungseinheiten benutzen will, extern benutzen muss.<br />
Extern funktioniert nur leider nicht mit Klassen.</p>
</blockquote>
<p>extern brauchst du auch nur bei Definitionen im Header, Klassen sind aber Typdeklarationen.</p>
<p>Was dir vermutlich fehlen wird sind aber wohl Includeguards:</p>
<pre><code class="language-cpp">#if !defined(NAMEDESHEADERS_HEADER)
#define NAMEDESHEADERS_HEADER

// &lt;-- Hier dein eigentlicher Headerinhalt

#endif
</code></pre>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1446511</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1446511</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 30 Jan 2008 17:15:58 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen-header in mehreren Übersetzungseinheiten on Wed, 30 Jan 2008 17:30:07 GMT]]></title><description><![CDATA[<p>...Guter Tip,<br />
ich hatte in die lib.hpp die Source- statt die Header Dateien includiert.<br />
Danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1446523</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1446523</guid><dc:creator><![CDATA[awds]]></dc:creator><pubDate>Wed, 30 Jan 2008 17:30:07 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen-header in mehreren Übersetzungseinheiten on Wed, 30 Jan 2008 17:30:15 GMT]]></title><description><![CDATA[<p>Auf das wollte ich heraus.. <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/1446524</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1446524</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 30 Jan 2008 17:30:15 GMT</pubDate></item></channel></rss>