<?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[this-Alternative für statische Membervariablen]]></title><description><![CDATA[<p>Man kann ja auf eine Membervariable einer Klasse mit</p>
<pre><code class="language-cpp">this-&gt;Variable
</code></pre>
<p>zugreifen. Gibt es sowas ähnliches auch für statische Membervariablen? Denn für die kann man ja logischerweise nicht this benutzen:</p>
<pre><code class="language-cpp">class Klasse
{
private:
    int zahl;
    static char zeichen;

public:
    void SetzeWerte (int zahl, char zeichen)
    {
        this-&gt;zahl=zahl;

      /*this-&gt;zeichen=zeichen geht nicht.
        Bleibt mir jetzt nur*/
        Klasse::zeichen=zeichen
      //oder gibt es da was anderes?
    }
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/153974/this-alternative-für-statische-membervariablen</link><generator>RSS for Node</generator><lastBuildDate>Mon, 07 Sep 2026 18:15:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/153974.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 22 Jul 2006 21:52:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sun, 23 Jul 2006 08:57:23 GMT]]></title><description><![CDATA[<p>Man kann ja auf eine Membervariable einer Klasse mit</p>
<pre><code class="language-cpp">this-&gt;Variable
</code></pre>
<p>zugreifen. Gibt es sowas ähnliches auch für statische Membervariablen? Denn für die kann man ja logischerweise nicht this benutzen:</p>
<pre><code class="language-cpp">class Klasse
{
private:
    int zahl;
    static char zeichen;

public:
    void SetzeWerte (int zahl, char zeichen)
    {
        this-&gt;zahl=zahl;

      /*this-&gt;zeichen=zeichen geht nicht.
        Bleibt mir jetzt nur*/
        Klasse::zeichen=zeichen
      //oder gibt es da was anderes?
    }
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1102395</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102395</guid><dc:creator><![CDATA[NES-Spieler]]></dc:creator><pubDate>Sun, 23 Jul 2006 08:57:23 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sat, 22 Jul 2006 21:54:44 GMT]]></title><description><![CDATA[<p>Du kannst Klassenname::member benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102396</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102396</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 22 Jul 2006 21:54:44 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sat, 22 Jul 2006 22:02:52 GMT]]></title><description><![CDATA[<p>NES-Spieler schrieb:</p>
<blockquote>
<p>Gibt es sowas ähnliches auch für statische Membervariablen? Denn für die kann man ja logischerweise nicht this benutzen:</p>
</blockquote>
<p>das darfst du durchaus. der zugriff auf member einer klasse per . oder -&gt; operator unterscheidet nicht zwischen statisch und nicht-statisch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102399</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102399</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 22 Jul 2006 22:02:52 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sat, 22 Jul 2006 22:17:13 GMT]]></title><description><![CDATA[<p>An Optimizer:<br />
Ja, ich weiß. Diese Version hab ich ja schon in meinem Beispiel gehabt. Aber ich würde eben gern wissen, ob es vielleicht noch was anderes gibt? Wenn nein, dann ist das o.k., aber wissen würd ich's gern.</p>
<p>An camper:<br />
Ich meine ja nicht außerhalb einer Klasse im Stil von</p>
<pre><code class="language-cpp">Klasse objekt;
objekt.variable=9;
</code></pre>
<p>sondern ich würde gern wissen: Gibt es eine Alternative des this-Zeigers für den Zugriff auf statische Variablen, wenn man sich innerhalb der Klasse befindet (und man nicht nur den Variablennamen selbst schreiben will, zum Beispiel, weil eine lokale Variable den gleichen Namen hat)?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102402</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102402</guid><dc:creator><![CDATA[NES-Spieler]]></dc:creator><pubDate>Sat, 22 Jul 2006 22:17:13 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sat, 22 Jul 2006 22:46:16 GMT]]></title><description><![CDATA[<p>Meines Wissens nach gibt es sonst keine andere Möglichkeit (in Fällen, wo es nicht reicht, nur den Variablennamen hinzuschreiben).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102405</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102405</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 22 Jul 2006 22:46:16 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sat, 22 Jul 2006 23:15:42 GMT]]></title><description><![CDATA[<p>ich verstehe die frage nicht. es gibt letzlich 4 möglichkeiten, klassenmember zu finden:<br />
1. per unqualifizierter member-id<br />
- findet klassenmember nur innerhalb einer memberfunktion, allerdings kann der member durch einen lokale deklaration verdeckt sein.<br />
2. per qualifizierter id<br />
- innerhalb oder ausserhalb einer klasse. allerdings kann eine nichtstatische entität ausserhalb einer memberfunktion nur dazu benutzt werden, einen pointer-auf-member(funktion) zu bilden<br />
3. per . oder -&gt; operator und unqualifiziertzer memberid<br />
- hier kann der member nicht durch lokale deklarationenen verdeckt werden (wohl aber durch redeklaration in einer abgeleiteten klasse)<br />
4. per . oder -&gt; operator und qualifiziertzer memberid<br />
- wie 3. kann aber auch entsprechend auf verdeckte member zugreifen oder ggf. bestimmte mehrdeutigkeiten auflösen</p>
<pre><code class="language-cpp">class Klasse
{
private:
    int zahl;
    static char zeichen;

public:
    void SetzeWerte (int zahl, char zeichen)
    {
   /*   zahl=zahl; */                    // 1. findet nicht member zahl nicht, da verdeckt durch funktionsparameter
        Klasse::zahl=zahl;               // 2.
        this-&gt;zahl=zahl;                 // 3.
        (*this).zahl=zahl;               // 3.
        this-&gt;Klasse::zahl=zahl;         // 4.
        (*this).Klasse::zahl=zahl;       // 4.

        Klasse::zeichen=zeichen;         // 2.
        this-&gt;zeichen=zeichen;           // 3.
        (*this).zeichen=zeichen;         // 3.
        this-&gt;Klasse::zeichen=zeichen;   // 4.
        (*this).Klasse::zeichen=zeichen; // 4.
    }
};
</code></pre>
<p>es spielt keinerlei rolle, ob der member dabei statisch ist, oder nicht. nat. hängt das resultat bei einem statischen member nicht wirklich vom objekt- bzw. pointer-argument des operators ab.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102412</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102412</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 22 Jul 2006 23:15:42 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sun, 23 Jul 2006 09:00:37 GMT]]></title><description><![CDATA[<p>Oh, o.k., ich habe einen Fehler in meiner Beschreibung gefunden. Natürlich kann man mit this auch auf eine statische Variable zugreifen.<br />
Mein eigentliches Problem kommt zum Vorschein, wenn auch die Funktion statisch ist:</p>
<pre><code class="language-cpp">class Klasse 
{ 
private: 
    static char zeichen; 

public: 
    static void SetzeWert (char zeichen) 
    { 
      //Jetzt geht this-&gt;zeichen=zeichen nicht. 
    } 
};
</code></pre>
<p>Soweit ich sehe, gibt es wirklich nur die Version</p>
<pre><code class="language-cpp">Klasse::zeichen=zeichen
</code></pre>
<p>aber ich wollte nochmal die Verwirrung auflösen, deshalb diese Antwort hier.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102458</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102458</guid><dc:creator><![CDATA[NES-Spieler]]></dc:creator><pubDate>Sun, 23 Jul 2006 09:00:37 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sun, 23 Jul 2006 09:07:05 GMT]]></title><description><![CDATA[<p>Richtig erkannt, statische Methoden haben keinen This-Zeiger und somit bleibt dir da keine andere Wahl.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102461</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102461</guid><dc:creator><![CDATA[Dr. Prof]]></dc:creator><pubDate>Sun, 23 Jul 2006 09:07:05 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Sun, 23 Jul 2006 13:59:35 GMT]]></title><description><![CDATA[<p>Eine statische Funktion und eine statische Variable, da spielt das individuelle Objekt keine Rolle mehr, sozusagen &quot;Kommunismus&quot; in Reinform, denn alle sind mit Ausnahme ihrer Speicheradresse (this) jederzeit völlig gleich. Damit ist man auf dem Niveau globale Funktion und globale Variable angekommen umhüllt durch einen namespace.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102554</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102554</guid><dc:creator><![CDATA[Erhard Henkes]]></dc:creator><pubDate>Sun, 23 Jul 2006 13:59:35 GMT</pubDate></item><item><title><![CDATA[Reply to this-Alternative für statische Membervariablen on Mon, 24 Jul 2006 06:10:05 GMT]]></title><description><![CDATA[<p>Erhard Henkes schrieb:</p>
<blockquote>
<p>Damit ist man auf dem Niveau globale Funktion und globale Variable angekommen umhüllt durch einen namespace.</p>
</blockquote>
<p>Das stimmt so nicht. Ein Namespace hat keine Bereichsprüfung und kann jederzeit erweitert werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1102880</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1102880</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Mon, 24 Jul 2006 06:10:05 GMT</pubDate></item></channel></rss>