<?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[Vererbungsproblem]]></title><description><![CDATA[<p>Ich hätte gerne eine virtuelle Basisklasse mit einem Counter, dh jedes mal wenn ein Objekt der Klasse angelegt wird, soll der Counter hochgezählt werden.</p>
<pre><code class="language-cpp">class Basis
{
public:
    static int COUNTER;
    virtual ~Basis(){};
    virtual doSomething()=0;
};
</code></pre>
<p>Nun ist es mir aber anscheinend nicht möglich auf den Counter zuzugreifen:</p>
<pre><code class="language-cpp">#include &quot;basis.h&quot;

int main()
{
    Basis::COUNTER = 0;
}
</code></pre>
<p>-&gt; undefined reference to Basis::COUNTER</p>
<p>Woran mag das liegen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/261892/vererbungsproblem</link><generator>RSS for Node</generator><lastBuildDate>Sun, 06 Sep 2026 23:40:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/261892.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 25 Feb 2010 09:42:41 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Vererbungsproblem on Thu, 25 Feb 2010 09:42:41 GMT]]></title><description><![CDATA[<p>Ich hätte gerne eine virtuelle Basisklasse mit einem Counter, dh jedes mal wenn ein Objekt der Klasse angelegt wird, soll der Counter hochgezählt werden.</p>
<pre><code class="language-cpp">class Basis
{
public:
    static int COUNTER;
    virtual ~Basis(){};
    virtual doSomething()=0;
};
</code></pre>
<p>Nun ist es mir aber anscheinend nicht möglich auf den Counter zuzugreifen:</p>
<pre><code class="language-cpp">#include &quot;basis.h&quot;

int main()
{
    Basis::COUNTER = 0;
}
</code></pre>
<p>-&gt; undefined reference to Basis::COUNTER</p>
<p>Woran mag das liegen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1861036</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1861036</guid><dc:creator><![CDATA[mal wieder...]]></dc:creator><pubDate>Thu, 25 Feb 2010 09:42:41 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbungsproblem on Thu, 25 Feb 2010 09:52:27 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">class Basis 
{ 
public: 
    static int COUNTER; 

}; 
int Basis::COUNTER = 0;

int main()
{
	Basis::COUNTER = 1; 
	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1861045</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1861045</guid><dc:creator><![CDATA[brotbernd]]></dc:creator><pubDate>Thu, 25 Feb 2010 09:52:27 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbungsproblem on Thu, 25 Feb 2010 15:06:16 GMT]]></title><description><![CDATA[<p>Du musst in deiner Header-Datei wie im Post oben drüber schon beschrieben, die statische variable noch initalisieren.</p>
<p>Wird häufig vergessen;-)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1861335</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1861335</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Thu, 25 Feb 2010 15:06:16 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbungsproblem on Thu, 25 Feb 2010 15:15:29 GMT]]></title><description><![CDATA[<p>fr33g schrieb:</p>
<blockquote>
<p>Du musst in deiner Header-Datei wie im Post oben drüber schon beschrieben, die statische variable noch initalisieren.</p>
</blockquote>
<p>Nicht im Header sondern in der .cpp, sonst hagelt es linkererrors, wenn der Header öfters als 1x eingebunden wird <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/1861344</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1861344</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Thu, 25 Feb 2010 15:15:29 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbungsproblem on Thu, 25 Feb 2010 17:21:27 GMT]]></title><description><![CDATA[<p>Ja da hast du recht <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="🙂"
    /><br />
Sorry hatte das grad verwechselt um nicht zu sagen mich vertippt <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="😉"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1861418</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1861418</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Thu, 25 Feb 2010 17:21:27 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbungsproblem on Thu, 25 Feb 2010 17:24:46 GMT]]></title><description><![CDATA[<p>Werden static-variablen nicht mit 0 initialisiert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1861421</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1861421</guid><dc:creator><![CDATA[oO]]></dc:creator><pubDate>Thu, 25 Feb 2010 17:24:46 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbungsproblem on Thu, 25 Feb 2010 17:47:58 GMT]]></title><description><![CDATA[<p>[quote=&quot;oO&quot;]Werden static-variablen nicht mit 0 initialisiert?[/quote</p>
<p>Ehm ja hat jemand was anderes gesagt?<br />
Schau doch mal oben in dem Code Beispiel.</p>
<pre><code class="language-cpp">int Basis::Counter = 0;
</code></pre>
<p>das danach in der main ist ja keine initialisierung, ist ja dann ne normale zuweisung, man könnte auch sagen sie wird neu definiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1861434</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1861434</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Thu, 25 Feb 2010 17:47:58 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbungsproblem on Thu, 25 Feb 2010 21:25:52 GMT]]></title><description><![CDATA[<p>Das &quot;in der main&quot; ist einfach eine Zuweisung.<br />
Eine Zuweisung ist keine Definition, auch keine Neudefinition.</p>
<p>Das was nötig ist, damit statische Variablen &quot;da&quot; sind, ist eine Definition. Ob dabei ein Wert zum Initialisieren angegeben wird oder nicht ist egal.</p>
<p>Und ja, statische und globale Variablen werden zuerst mal &quot;zero initialized&quot;, bevor irgendwas anderes passiert. Auch wenn man im Code nichts diesbezüglich schreibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1861533</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1861533</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Thu, 25 Feb 2010 21:25:52 GMT</pubDate></item></channel></rss>