<?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[Globales Objekt im Header?]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab nochmal eine Verständnissfrage.</p>
<p>ich habe eine Klasse a in datei a.h und a.cpp<br />
diese benutzt klasse b in b.h und b.cpp</p>
<p>ich möchte nun in a.h eine instanz der klasse b als bObj &quot;veröffentlichen&quot;, so<br />
dass alle units die a.h benutzten auf bObj zugreifen können.</p>
<p>Hoffe das ist soweit verständlich?</p>
<p>ich habe im Header einfach b bObj eingetragen,<br />
allerdings sagt der Compiler &quot;multiple definition of bObj&quot;.<br />
Und zwar für jede Klasse die ich von a ableite.(anscheinden)<br />
Der Header hat allerdings eine #ifndef #define Konstruktion.</p>
<p>Kann mir jemand auf die Sprünge helfen?</p>
<p>Ach noch eine Frage...<br />
Gibt es unter C++ vordefinierte Klassen für Listen,etc???<br />
Ich finde sowas nur für mfc oder VC++....</p>
<p>Gruß<br />
FXMaveric</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/231626/globales-objekt-im-header</link><generator>RSS for Node</generator><lastBuildDate>Fri, 25 Sep 2026 19:45:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/231626.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 13 Jan 2009 15:14:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Globales Objekt im Header? on Tue, 13 Jan 2009 15:14:13 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab nochmal eine Verständnissfrage.</p>
<p>ich habe eine Klasse a in datei a.h und a.cpp<br />
diese benutzt klasse b in b.h und b.cpp</p>
<p>ich möchte nun in a.h eine instanz der klasse b als bObj &quot;veröffentlichen&quot;, so<br />
dass alle units die a.h benutzten auf bObj zugreifen können.</p>
<p>Hoffe das ist soweit verständlich?</p>
<p>ich habe im Header einfach b bObj eingetragen,<br />
allerdings sagt der Compiler &quot;multiple definition of bObj&quot;.<br />
Und zwar für jede Klasse die ich von a ableite.(anscheinden)<br />
Der Header hat allerdings eine #ifndef #define Konstruktion.</p>
<p>Kann mir jemand auf die Sprünge helfen?</p>
<p>Ach noch eine Frage...<br />
Gibt es unter C++ vordefinierte Klassen für Listen,etc???<br />
Ich finde sowas nur für mfc oder VC++....</p>
<p>Gruß<br />
FXMaveric</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644625</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644625</guid><dc:creator><![CDATA[FXMaveric]]></dc:creator><pubDate>Tue, 13 Jan 2009 15:14:13 GMT</pubDate></item><item><title><![CDATA[Reply to Globales Objekt im Header? on Tue, 13 Jan 2009 15:26:43 GMT]]></title><description><![CDATA[<p>FXMaveric schrieb:</p>
<blockquote>
<p>ich möchte nun in a.h eine instanz der klasse b als bObj &quot;veröffentlichen&quot;, so<br />
dass alle units die a.h benutzten auf bObj zugreifen können.</p>
<p>Hoffe das ist soweit verständlich?</p>
</blockquote>
<p>Aus Lesersicht: ja<br />
Aus Programmierersicht: nein (Globale Variablen sollte man meiden)</p>
<p>FXMaveric schrieb:</p>
<blockquote>
<p>ich habe im Header einfach b bObj eingetragen,</p>
</blockquote>
<p>Ich nehme anhand deiner weiteren Beschreibung an das du Includeguards kennst (&quot;hat allerdings eine #ifndef #define Konstruktion&quot;).</p>
<p>Such mal nach dem Schlüsselwort extern (&quot;extern b bObj;&quot; im Header, &quot;b bObj;&quot; im Source).</p>
<p>FXMaveric schrieb:</p>
<blockquote>
<p>Ach noch eine Frage...<br />
Gibt es unter C++ vordefinierte Klassen für Listen,etc???<br />
Ich finde sowas nur für mfc oder VC++....</p>
</blockquote>
<p>Die C++ Standardbibliothek liefert noch weit mehr als das.<br />
std::vector, std::list, std::map...</p>
<p>Ich persönlich verwende die Referenz von der <a href="http://www.dinkumware.com/manuals/default.aspx" rel="nofollow">Dinkumware</a>-Umsetzung, aber es gibt noch Einsteigerfreundlichere, habe nur grad keinen anderen Link zur Hand.</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644639</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Tue, 13 Jan 2009 15:26:43 GMT</pubDate></item><item><title><![CDATA[Reply to Globales Objekt im Header? on Tue, 13 Jan 2009 22:37:15 GMT]]></title><description><![CDATA[<p>Referenzen zur Standardbibliothek gibts beispielsweise noch:<br />
<a href="http://www.cplusplus.com/" rel="nofollow">http://www.cplusplus.com/</a><br />
<a href="http://www.cppreference.com/wiki/" rel="nofollow">http://www.cppreference.com/wiki/</a></p>
<p>Erstere verwende ich selber sehr häufig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644962</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644962</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 13 Jan 2009 22:37:15 GMT</pubDate></item><item><title><![CDATA[Reply to Globales Objekt im Header? on Wed, 14 Jan 2009 06:52:08 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>und Danke erst mal für die Antworten!</p>
<p>Bezüglich:</p>
<blockquote>
<p>Such mal nach dem Schlüsselwort extern (&quot;extern b bObj;&quot; im Header, &quot;b bObj;&quot; im Source).</p>
</blockquote>
<p>Ich hab den Source selbst geschrieben und das nicht verwendet. Auch nicht beim suchen gefunden. Soll das dort stehen und darf nicht?</p>
<p>Gruß<br />
FXMaveric</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1645046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1645046</guid><dc:creator><![CDATA[FXMaveric]]></dc:creator><pubDate>Wed, 14 Jan 2009 06:52:08 GMT</pubDate></item><item><title><![CDATA[Reply to Globales Objekt im Header? on Wed, 14 Jan 2009 08:14:31 GMT]]></title><description><![CDATA[<p>FXMaveric schrieb:</p>
<blockquote>
<blockquote>
<p>Such mal nach dem Schlüsselwort extern (&quot;extern b bObj;&quot; im Header, &quot;b bObj;&quot; im Source).</p>
</blockquote>
<p>Ich hab den Source selbst geschrieben und das nicht verwendet. Auch nicht beim suchen gefunden. Soll das dort stehen und darf nicht?</p>
</blockquote>
<p>Ich nehme mal an das du <a href="http://www.google.de" rel="nofollow">www.google.de</a> kennst?</p>
<p>Gekürzter Auszug aus der <a href="http://www.msdn.com" rel="nofollow">MSDN</a></p>
<blockquote>
<p><strong>C/C++ Keywords</strong><br />
extern</p>
<pre><code>extern declarator      // used when variable or function has external linkage
</code></pre>
<p>The extern keyword declares a variable or function and specifies that it has external linkage (its name is visible from files other than the one in which it's defined). When modifying a variable, extern specifies that the variable has static duration (it is allocated when the program begins and deallocated when the program ends). The variable or function may be defined in another source file, or later in the same file. In C++, when used with a string, extern specifies that the linkage conventions of another language are being used for the declarator(s).</p>
<p>Declarations of variables and functions at file scope are external by default.</p>
</blockquote>
<pre><code class="language-cpp">// Header (.h)
extern b bObj;
// Source (.cpp)
b bObj;
</code></pre>
<p>Mit ersteren legst du keinen Speicher an, sondern gibst nur bekannt das es ein b mit dem Namen bObj gibt. In der cpp definierst du es dann (hier wird der Speicher reserviert...).</p>
<p>Ich selbst brauche extern eigentlich so gut wie nie (globale Variablen: pfui).</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1645072</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1645072</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 14 Jan 2009 08:14:31 GMT</pubDate></item></channel></rss>