<?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[enum in zwei Klassen gleich benutzbar, wie?]]></title><description><![CDATA[<pre><code class="language-cpp">struct A
{
    enum EType { First };
};

struct B
{
    B()
    {
        A::EType x = A::First; // klappt
        EType x = First; // EType undeclared
    }
};
</code></pre>
<p>Ich möchte das Klasse B ohne das A:: davor auf das enum aus der ersten Klasse zugreifen kann. Wie lässt sich das realisieren? (Das enum soll von außen aber per A:: erreichbar sein, also es darf nicht global sein)</p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/153653/enum-in-zwei-klassen-gleich-benutzbar-wie</link><generator>RSS for Node</generator><lastBuildDate>Mon, 07 Sep 2026 17:14:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/153653.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 19 Jul 2006 12:14:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:14:48 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">struct A
{
    enum EType { First };
};

struct B
{
    B()
    {
        A::EType x = A::First; // klappt
        EType x = First; // EType undeclared
    }
};
</code></pre>
<p>Ich möchte das Klasse B ohne das A:: davor auf das enum aus der ersten Klasse zugreifen kann. Wie lässt sich das realisieren? (Das enum soll von außen aber per A:: erreichbar sein, also es darf nicht global sein)</p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100337</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100337</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:14:48 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:22:18 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">struct A
{
    enum EType { First };
};

struct B
{
#define EType A::Etype
    B()
    {
        A::EType x = A::First; // klappt
        EType x = First; // EType undeclared
    }
#undef EType
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1100341</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100341</guid><dc:creator><![CDATA[dragon90#]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:22:18 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:23:47 GMT]]></title><description><![CDATA[<p>dragon90: Das geht auch schöner.</p>
<pre><code class="language-cpp">struct A
{
    enum EType { First };
};

struct B
{
    using A::EType;

    B()
    {
        EType x = First;
    }
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1100343</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100343</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:23:47 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:23:56 GMT]]></title><description><![CDATA[<p>Hihi, so einfach geht das nicht. A ist schliesslich ein eigener Scope, du wirst also irgendwie den Qualifizierer mit angeben müssen.</p>
<p>Probier mal folgendes aus:</p>
<pre><code class="language-cpp">struct B
{
   using A::EType;
};
</code></pre>
<p>Weiß nicht ob es funktioniert.</p>
<p>Wenn du das auch nicht willst, bleibt nur die Ableitung von A. Aber das wäre wirklich dreckig, wenn es fachlich keinen Sinn macht und du nur auf das A:: verzichten willst,</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100344</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100344</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:23:56 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:27:08 GMT]]></title><description><![CDATA[<p>Das funktioniert nicht, bleibt nur ein Define übrig und Vererbung fällt ja weg (es sei denn du hast in B eine Komposition, dann könntest ja von A privat erben).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100345</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100345</guid><dc:creator><![CDATA[dragon90#]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:27:08 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:35:06 GMT]]></title><description><![CDATA[<p>@dragon50#<br />
Danke! Das mit dem define ist echt ein guter weg. Vielleicht ja auch der einzige?</p>
<p>@others<br />
Das mit dem using hatte ich auch schon ausprobiert, doch klappt wie gesagt nicht.</p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100350</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100350</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:35:06 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:50:57 GMT]]></title><description><![CDATA[<p>joomoo schrieb:</p>
<blockquote>
<p>@dragon50#<br />
Danke! Das mit dem define ist echt ein guter weg. Vielleicht ja auch der einzige?</p>
</blockquote>
<p>Es ist kein <em>guter</em> Weg ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100359</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100359</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:50:57 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:52:37 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/6950">@joomoo</a><br />
Was spricht den eigentlich dagegen, den Scope anzugeben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100360</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100360</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:52:37 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:53:00 GMT]]></title><description><![CDATA[<p>warum?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100361</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100361</guid><dc:creator><![CDATA[Muffin888]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:53:00 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 12:56:57 GMT]]></title><description><![CDATA[<p>Probier mal den Code aus, den dragon da gepostet hat ...<br />
BTW, es ist schon ziemlicher Quatsch, ein 3 Zeichen langes A:: durch zwei böse Codezeilen zu ersetzen ...</p>
<p>/edit:<br />
Vielleicht ja so:</p>
<pre><code class="language-cpp">struct B
{
    typedef A::EType EType;
// ...
</code></pre>
<p>Immerhin kommts ohne Präprozessor aus und ist nicht so fehleranfällig (man denke nur an ein leicht vergessenes #undef ..)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100364</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100364</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Wed, 19 Jul 2006 12:56:57 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 13:14:02 GMT]]></title><description><![CDATA[<p>Jo stimmt, das mit dem typedef ist der gute Weg. Schade das es nicht mit dem using geklappt hat, denn jetzt muss man zwar nicht mehr A::EType schreiben aber dafür A::First <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100377</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100377</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Wed, 19 Jul 2006 13:14:02 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 13:22:42 GMT]]></title><description><![CDATA[<p>Wie wärs hiermit?</p>
<pre><code class="language-cpp">struct A
{
    enum EType { First };
};

struct B
{
    B()
    {
        struct EType : public A
        {
            EType()
            {
                elem = new A::EType();
            }

            ~EType()
            {
                delete elem;
            }

            A::EType &amp;operator()()
            {
                return *elem;
            }

        private:
            A::EType *elem;
        } x;

        x() = EType::First;
    }
};
</code></pre>
<p><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</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100381</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100381</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 19 Jul 2006 13:22:42 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 13:38:46 GMT]]></title><description><![CDATA[<p>Ihr spinnt doch alle! <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/1100399</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100399</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Wed, 19 Jul 2006 13:38:46 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 13:41:06 GMT]]></title><description><![CDATA[<p>Direkt wieder rummaulen, dass hamma gern. Er hat nur die Aufgabenstellung gelöst ;). Und selbst diese &quot;Lösung&quot; ist noch akzeptabler als der #define Quatsch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100405</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100405</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Wed, 19 Jul 2006 13:41:06 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 13:58:56 GMT]]></title><description><![CDATA[<p>.filmor schrieb:</p>
<blockquote>
<p>Er hat nur die Aufgabenstellung gelöst ;). Und selbst diese &quot;Lösung&quot; ist noch akzeptabler als der #define Quatsch.</p>
</blockquote>
<p>Naja, eigentlich will ich ja nicht von A ableiten... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> Und diese Lösung finde ich viel schlimmer als das mit dem #define und sie funktioniert auch nicht besser als z.B. das mit dem typedef.</p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100419</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100419</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Wed, 19 Jul 2006 13:58:56 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 14:02:27 GMT]]></title><description><![CDATA[<p>.filmor schrieb:</p>
<blockquote>
<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>
</blockquote>
<p>.filmor schrieb:</p>
<blockquote>
<p>selbst diese &quot;Lösung&quot;</p>
</blockquote>
<p>Noch Fragen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100421</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100421</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Wed, 19 Jul 2006 14:02:27 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 14:12:00 GMT]]></title><description><![CDATA[<p>.filmor schrieb:</p>
<blockquote>
<p>.filmor schrieb:</p>
<blockquote>
<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>
</blockquote>
<p>.filmor schrieb:</p>
<blockquote>
<p>selbst diese &quot;Lösung&quot;</p>
</blockquote>
<p>Noch Fragen?</p>
</blockquote>
<p>Ne <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="😃"
    /> Hab's nicht gemerkt <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="🙂"
    /></p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100430</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100430</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Wed, 19 Jul 2006 14:12:00 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 14:35:37 GMT]]></title><description><![CDATA[<p>joomoo schrieb:</p>
<blockquote>
<p>Naja, eigentlich will ich ja nicht von A ableiten... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
</blockquote>
<p>Der Trick ist, dass nur die lokale Klasse von A ableitet, B aber nicht <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="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100453</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100453</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 19 Jul 2006 14:35:37 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 14:48:44 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>joomoo schrieb:</p>
<blockquote>
<p>Naja, eigentlich will ich ja nicht von A ableiten... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
</blockquote>
<p>Der Trick ist, dass nur die lokale Klasse von A ableitet, B aber nicht <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="🙂"
    /></p>
</blockquote>
<p>dadurch würden ja aber trotzdem eventuelle Member von A erstellt oder?</p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100460</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100460</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Wed, 19 Jul 2006 14:48:44 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 15:10:22 GMT]]></title><description><![CDATA[<p>Und es wurde eine reine Compile-Time Angelegenheit in eine Laufzeitangelegenheit umgewandelt, find ich nicht wirklich akzeptabel.<br />
Das typedef löst das Problem mit dem Scope auch nur zu Hälfte und dabei die kleinere Hälfte.</p>
<p>Ich würd einfach den Scope mitangeben, da mir die Zeit zu schade wäre mir über sowas Gedanken zu machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100484</guid><dc:creator><![CDATA[dragon90#]]></dc:creator><pubDate>Wed, 19 Jul 2006 15:10:22 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 16:18:05 GMT]]></title><description><![CDATA[<p>joomoo schrieb:</p>
<blockquote>
<p>dadurch würden ja aber trotzdem eventuelle Member von A erstellt oder?</p>
</blockquote>
<p>Das stimmt. Leider kann man dieses Problem auch nicht durch ein statisches Member lösen, weil lokale Klassen sowas nicht haben dürfen.</p>
<p>Alles in allem sind alle Lösungen Kappes.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100522</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100522</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 19 Jul 2006 16:18:05 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 19:59:30 GMT]]></title><description><![CDATA[<p>Hi!</p>
<p>Das was du willst geht mit using, aber auch nur über Vererbung:</p>
<pre><code class="language-cpp">struct A
{
    enum EType { First };
};

struct B : public A {
	using A::EType;

    B()
    {
        EType x = First;
    }
};
</code></pre>
<p>Statt public kannst du auch privat erben. Durch diese using-Deklaration wird jedes benannte Member aus der Basisklasse in den Gültigkeitsbereich der abgeleiteten Klasse eingeführt. (Habe es probehalber nochmal mit VS 2005 Std. compiliert.)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100626</guid><dc:creator><![CDATA[Vellas]]></dc:creator><pubDate>Wed, 19 Jul 2006 19:59:30 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Wed, 19 Jul 2006 22:43:40 GMT]]></title><description><![CDATA[<p>Sämtliche Alternativlösungen (zu meiner Define-Lösung) sind entweder unvollständig, misachten Design-Prinzipien oder fressen Laufzeit für eine rein stilistische Angelegenheit.<br />
Gesteht es ein für so etwas ist ein Define noch die beste Lösung. Das Problem ist ja kein richtiges Problem sondern nur eine rein stilistische Angelegenheit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100694</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100694</guid><dc:creator><![CDATA[dragon90#]]></dc:creator><pubDate>Wed, 19 Jul 2006 22:43:40 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Thu, 20 Jul 2006 09:33:43 GMT]]></title><description><![CDATA[<p>dragon90# schrieb:</p>
<blockquote>
<p>Sämtliche Alternativlösungen (zu meiner Define-Lösung) sind entweder unvollständig, misachten Design-Prinzipien oder fressen Laufzeit für eine rein stilistische Angelegenheit.<br />
Gesteht es ein für so etwas ist ein Define noch die beste Lösung. Das Problem ist ja kein richtiges Problem sondern nur eine rein stilistische Angelegenheit.</p>
</blockquote>
<p>Wieso? Das mit dem typedef ist doch besser?!</p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100896</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100896</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Thu, 20 Jul 2006 09:33:43 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Thu, 20 Jul 2006 10:55:32 GMT]]></title><description><![CDATA[<blockquote>
<p>Jo stimmt, das mit dem typedef ist der gute Weg. Schade das es nicht mit dem using geklappt hat, denn jetzt muss man zwar nicht mehr A::EType schreiben aber dafür A::First</p>
</blockquote>
<p>Übrehaupt ist doch der Sinn eines enum das man einen scope hat.</p>
<pre><code class="language-cpp">enum Fooo { xxxxx }; // einmal Fooo::xxxxx

enum Baar { xxxxx }; // einmal Baar::xxxxx
</code></pre>
<p>sonst kann man doch gleich statische Konstanten benutzen.<br />
Soll heisen: Es ist ein feature, kein bug <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1101014</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1101014</guid><dc:creator><![CDATA[DEvent]]></dc:creator><pubDate>Thu, 20 Jul 2006 10:55:32 GMT</pubDate></item><item><title><![CDATA[Reply to enum in zwei Klassen gleich benutzbar, wie? on Thu, 20 Jul 2006 11:34:21 GMT]]></title><description><![CDATA[<p>joomoo schrieb:</p>
<blockquote>
<p>dragon90# schrieb:</p>
<blockquote>
<p>Sämtliche Alternativlösungen (zu meiner Define-Lösung) sind entweder unvollständig, misachten Design-Prinzipien oder fressen Laufzeit für eine rein stilistische Angelegenheit.<br />
Gesteht es ein für so etwas ist ein Define noch die beste Lösung. Das Problem ist ja kein richtiges Problem sondern nur eine rein stilistische Angelegenheit.</p>
</blockquote>
<p>Wieso? Das mit dem typedef ist doch besser?!</p>
<p>mfg.</p>
</blockquote>
<p>Nicht wirklich:</p>
<pre><code class="language-cpp">//Deklaration
EType myEnum = A::First;

if( myEnum == A::First )
    myEnum = A::Second;
//...
</code></pre>
<p>Man spart den Scope nur bei der Deklaration ein, aber gerade da ist es ja egal, das muss man ja nur einmal pro Variable machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1101071</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1101071</guid><dc:creator><![CDATA[dragon90#]]></dc:creator><pubDate>Thu, 20 Jul 2006 11:34:21 GMT</pubDate></item></channel></rss>