<?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[nochmal static]]></title><description><![CDATA[<p>Also:<br />
Wenn eine Klasse eine Variable enthält, die static ist, heisst das, dass sie bei allen Instanzen dieser Klasse den gleichen Wert hat.<br />
Wenn in einer Funktion eine Variable als static markiert ist, bedeutet das, dass sie im Hauptspeciher liegt, und somit ihren Wert zwischen den Funktionsaufrufen beibehält.</p>
<p>Wenn ich aber dann in einer Funktion einer Klasse eine Variable mit static deklariere, hat diese dann in allen INstanzen der Klasse in der Funktion den gleichen Wert?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/192542/nochmal-static</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 12:29:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/192542.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 15 Sep 2007 19:17:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to nochmal static on Sat, 15 Sep 2007 19:17:04 GMT]]></title><description><![CDATA[<p>Also:<br />
Wenn eine Klasse eine Variable enthält, die static ist, heisst das, dass sie bei allen Instanzen dieser Klasse den gleichen Wert hat.<br />
Wenn in einer Funktion eine Variable als static markiert ist, bedeutet das, dass sie im Hauptspeciher liegt, und somit ihren Wert zwischen den Funktionsaufrufen beibehält.</p>
<p>Wenn ich aber dann in einer Funktion einer Klasse eine Variable mit static deklariere, hat diese dann in allen INstanzen der Klasse in der Funktion den gleichen Wert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366069</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366069</guid><dc:creator><![CDATA[Statiker]]></dc:creator><pubDate>Sat, 15 Sep 2007 19:17:04 GMT</pubDate></item><item><title><![CDATA[Reply to nochmal static on Sat, 15 Sep 2007 19:47:25 GMT]]></title><description><![CDATA[<p>Lässt sich doch ganz einfach nachprüfen:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

struct Test {
	void test(int par=0) {static int a=par; std::cout&lt;&lt;&quot;Wert der Variablen=&quot;&lt;&lt;a;}
};

int main() {
	Test test1, test2;
	test1.test();
	test2.test(4);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1366077</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366077</guid><dc:creator><![CDATA[moagnus]]></dc:creator><pubDate>Sat, 15 Sep 2007 19:47:25 GMT</pubDate></item><item><title><![CDATA[Reply to nochmal static on Sat, 15 Sep 2007 20:00:41 GMT]]></title><description><![CDATA[<p>Statiker schrieb:</p>
<blockquote>
<p>....<br />
Wenn ich aber dann in einer Funktion einer Klasse eine Variable mit static deklariere, hat diese dann in allen INstanzen der Klasse in der Funktion den gleichen Wert?</p>
</blockquote>
<p>Ja!</p>
<p><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/1366083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366083</guid><dc:creator><![CDATA[egon2]]></dc:creator><pubDate>Sat, 15 Sep 2007 20:00:41 GMT</pubDate></item><item><title><![CDATA[Reply to nochmal static on Sat, 15 Sep 2007 20:08:02 GMT]]></title><description><![CDATA[<p>Statiker schrieb:</p>
<blockquote>
<p>Wenn ich aber dann in einer Funktion einer Klasse eine Variable mit static deklariere, hat diese dann in allen INstanzen der Klasse in der Funktion den gleichen Wert?</p>
</blockquote>
<p>Das ist dann eine static-Variable in einer Funktion, die Regeln dafür kennst du schon. Dass das eine Funktion in einer Klasse ist, ist uninteressant.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366085</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366085</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Sat, 15 Sep 2007 20:08:02 GMT</pubDate></item><item><title><![CDATA[Reply to nochmal static on Sat, 15 Sep 2007 21:10:07 GMT]]></title><description><![CDATA[<p>Also war das von egon2 falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366103</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366103</guid><dc:creator><![CDATA[Statiker]]></dc:creator><pubDate>Sat, 15 Sep 2007 21:10:07 GMT</pubDate></item><item><title><![CDATA[Reply to nochmal static on Sat, 15 Sep 2007 21:16:46 GMT]]></title><description><![CDATA[<p>Nein, das nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366104</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366104</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Sat, 15 Sep 2007 21:16:46 GMT</pubDate></item><item><title><![CDATA[Reply to nochmal static on Sun, 16 Sep 2007 07:48:13 GMT]]></title><description><![CDATA[<p>@Statiker: Du siehst das aus dem falschen Blickwinkel.<br />
In Klassen gibt es keine Funktionen sondern nur Methoden. Somit ist auch klar welche Regel zutreffen muß.</p>
<p>moagnus Beispiel ist etwas verwirrend da beim ersten Aufruf die Variable angelegt wird, beim zweiten existiert sie jedoch bereits.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

struct Test {
    void test(int par=0) {static int a=par;a++;std::cout&lt;&lt;&quot;Wert der Variablen=&quot;&lt;&lt;a;}
};

int main() {
    Test test1, test2;
    test1.test();
    test2.test(4);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1366159</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366159</guid><dc:creator><![CDATA[Shamanu]]></dc:creator><pubDate>Sun, 16 Sep 2007 07:48:13 GMT</pubDate></item><item><title><![CDATA[Reply to nochmal static on Sun, 16 Sep 2007 13:02:06 GMT]]></title><description><![CDATA[<p>Hm, vllt. eher sowas?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

struct Test {
    void test() {static int a=0; ++a; std::cout&lt;&lt;&quot;Wert der Variablen=&quot;&lt;&lt;a&lt;&lt;std::endl;}
};

int main() {
    Test test1, test2;
    test1.test();
    test2.test();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1366327</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366327</guid><dc:creator><![CDATA[moagnus]]></dc:creator><pubDate>Sun, 16 Sep 2007 13:02:06 GMT</pubDate></item><item><title><![CDATA[Reply to nochmal static on Sun, 16 Sep 2007 16:45:42 GMT]]></title><description><![CDATA[<p>Also, danke, habs endlich geschnallt.<br />
Dann machts in dem Fall bei mir gar keinen Unterschied, wo ich die Variable deklariere (in der Klasse oder in der Funktion),<br />
da es sich ja gleich verhält.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366469</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366469</guid><dc:creator><![CDATA[Statiker]]></dc:creator><pubDate>Sun, 16 Sep 2007 16:45:42 GMT</pubDate></item></channel></rss>