<?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[Seltsames Verhalten mit enum und Konstruktor]]></title><description><![CDATA[<p>Hey!</p>
<p>Sitze grad in einem C++ Kurs und da stießen wir auf etwas, wo selbst der Trainer nicht weiter wusste:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

enum Color
{
	Red, Green, Blue
};

class Test
{
public:
	Test()
	{
		cout &lt;&lt; &quot;Test default&quot; &lt;&lt; endl;
	}
	Test(Color color)
	{
		cout &lt;&lt; &quot;Test with color&quot; &lt;&lt; endl;
	}
};

int main()
{
	// VC++ 2008
	Test(Green); // Bezeichner Green ist &quot;enum Color::Green = 1&quot;
    // Es wird aber der Default-Konstruktor aufgerufen!

	Green; // Bezeichner ist nun plötzlich &quot;Base Green&quot;
}
</code></pre>
<p>Es wird der Default-Konstruktor aufgerufen, aber warum?<br />
Wenn ich...</p>
<pre><code class="language-cpp">Test((Color)2);
</code></pre>
<p>...schreibe, dann wird der richtige Konstruktor aufgerufen. Was soll das?</p>
<p>Hatte mit sowas nie zu tun, unser Trainer anscheinend auch nicht <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="🙄"
    /><br />
MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/214251/seltsames-verhalten-mit-enum-und-konstruktor</link><generator>RSS for Node</generator><lastBuildDate>Tue, 13 Oct 2026 17:31:18 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/214251.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 27 May 2008 10:40:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 10:40:53 GMT]]></title><description><![CDATA[<p>Hey!</p>
<p>Sitze grad in einem C++ Kurs und da stießen wir auf etwas, wo selbst der Trainer nicht weiter wusste:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

enum Color
{
	Red, Green, Blue
};

class Test
{
public:
	Test()
	{
		cout &lt;&lt; &quot;Test default&quot; &lt;&lt; endl;
	}
	Test(Color color)
	{
		cout &lt;&lt; &quot;Test with color&quot; &lt;&lt; endl;
	}
};

int main()
{
	// VC++ 2008
	Test(Green); // Bezeichner Green ist &quot;enum Color::Green = 1&quot;
    // Es wird aber der Default-Konstruktor aufgerufen!

	Green; // Bezeichner ist nun plötzlich &quot;Base Green&quot;
}
</code></pre>
<p>Es wird der Default-Konstruktor aufgerufen, aber warum?<br />
Wenn ich...</p>
<pre><code class="language-cpp">Test((Color)2);
</code></pre>
<p>...schreibe, dann wird der richtige Konstruktor aufgerufen. Was soll das?</p>
<p>Hatte mit sowas nie zu tun, unser Trainer anscheinend auch nicht <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="🙄"
    /><br />
MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517518</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517518</guid><dc:creator><![CDATA[ceplusplus*loggedoff]]></dc:creator><pubDate>Tue, 27 May 2008 10:40:53 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 10:45:37 GMT]]></title><description><![CDATA[<p>Du legst eine Variable Green vom Typ Test an:</p>
<pre><code class="language-cpp">Test(Green);
//ist sowas wie:
int(a);
a = 3;
</code></pre>
<p>Was Du willst:</p>
<pre><code class="language-cpp">Test obj(Green);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1517522</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517522</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Tue, 27 May 2008 10:45:37 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 10:53:51 GMT]]></title><description><![CDATA[<p>muss ja ein toller trainer sein <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/1517524</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517524</guid><dc:creator><![CDATA[besserer]]></dc:creator><pubDate>Tue, 27 May 2008 10:53:51 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 11:02:24 GMT]]></title><description><![CDATA[<p>Ohhh alles klar <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 />
Hatte die Schreibweise mit den Klammern bei einer Definition nicht mehr in Erinnerung, ist doch irgendwo auch doof <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>
<p>Funktioniert dann wohl nur zB. so (Da der Compiler hier ja nun weiß, dass er eine Definition nicht irgendwohin zuweisen kann):</p>
<pre><code class="language-cpp">Test t = Test(Green);
</code></pre>
<p>MfG</p>
<p>//EDIT:<br />
@besserer<br />
Tja, man lernt nie aus. Außerdem kommt der eher von der C# Ecke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/10648">@LordJaxom</a><br />
Nene nix, wollts nur gesagt haben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517526</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517526</guid><dc:creator><![CDATA[ceplusplus*loggedoff]]></dc:creator><pubDate>Tue, 27 May 2008 11:02:24 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 11:01:24 GMT]]></title><description><![CDATA[<p>Was spricht gegen Test t(Green)?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517534</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517534</guid><dc:creator><![CDATA[LordJaxom_lg]]></dc:creator><pubDate>Tue, 27 May 2008 11:01:24 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 11:03:57 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich vermute ja mal einen Copy-Fehler, aber ich vermisse in der Deklaration von &quot;Test&quot; ein Attribut vom Typ &quot;Color&quot;....</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517536</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517536</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 27 May 2008 11:03:57 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 11:05:38 GMT]]></title><description><![CDATA[<p>Simon2 schrieb:</p>
<blockquote>
<p>Hi,</p>
<p>ich vermute ja mal einen Copy-Fehler, aber ich vermisse in der Deklaration von &quot;Test&quot; ein Attribut vom Typ &quot;Color&quot;....</p>
<p>Gruß,</p>
<p>Simon2.</p>
</blockquote>
<p>Wieso, wenns nur um den Konstruktoraufruf geht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517537</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517537</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Tue, 27 May 2008 11:05:38 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 11:09:51 GMT]]></title><description><![CDATA[<p>Jo, war jetzt nur schnell für ne Demo.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517546</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517546</guid><dc:creator><![CDATA[ceplusplus*loggedoff]]></dc:creator><pubDate>Tue, 27 May 2008 11:09:51 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 12:15:54 GMT]]></title><description><![CDATA[<p>Tachyon schrieb:</p>
<blockquote>
<p>Simon2 schrieb:</p>
<blockquote>
<p>Hi,</p>
<p>ich vermute ja mal einen Copy-Fehler, aber ich vermisse in der Deklaration von &quot;Test&quot; ein Attribut vom Typ &quot;Color&quot;....</p>
<p>Gruß,</p>
<p>Simon2.</p>
</blockquote>
<p>Wieso, wenns nur um den Konstruktoraufruf geht?</p>
</blockquote>
<p>.... ich frag ja nur. Wenn jemand hier mit seltsamer Syntax von einem noch seltsameren Trainer auftaucht, frage ich lieber einmal mehr (zumal auf sein ursprüngliches Problem ja gelöst ist).<br />
Bei Unregs kann ich nie wissen, wie ihr Wissensstand so ist ...</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517597</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517597</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 27 May 2008 12:15:54 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 12:21:30 GMT]]></title><description><![CDATA[<p>Simon2 schrieb:</p>
<blockquote>
<p>Tachyon schrieb:</p>
<blockquote>
<p>Simon2 schrieb:</p>
<blockquote>
<p>Hi,</p>
<p>ich vermute ja mal einen Copy-Fehler, aber ich vermisse in der Deklaration von &quot;Test&quot; ein Attribut vom Typ &quot;Color&quot;....</p>
<p>Gruß,</p>
<p>Simon2.</p>
</blockquote>
<p>Wieso, wenns nur um den Konstruktoraufruf geht?</p>
</blockquote>
<p>.... ich frag ja nur. Wenn jemand hier mit seltsamer Syntax von einem noch seltsameren Trainer auftaucht, frage ich lieber einmal mehr (zumal auf sein ursprüngliches Problem ja gelöst ist).<br />
Bei Unregs kann ich nie wissen, wie ihr Wissensstand so ist ...</p>
<p>Gruß,</p>
<p>Simon2.</p>
</blockquote>
<p>Okay...</p>
<p>Wobei er (wider seinem Namen) schon registriert ist. <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/1517607</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517607</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Tue, 27 May 2008 12:21:30 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 12:23:27 GMT]]></title><description><![CDATA[<p>Tachyon schrieb:</p>
<blockquote>
<p>...Wobei er (wider seinem Namen) schon registriert ist.<br />
<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>Huch ! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /><br />
Habe ich übersehen...</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517608</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517608</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 27 May 2008 12:23:27 GMT</pubDate></item><item><title><![CDATA[Reply to Seltsames Verhalten mit enum und Konstruktor on Tue, 27 May 2008 12:27:51 GMT]]></title><description><![CDATA[<p><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>Simon2 schrieb:</p>
<blockquote>
<p>...mit seltsamer Syntax von einem noch seltsameren Trainer...</p>
</blockquote>
<p>Naja, er wollte nur einen Konstruktoraufruf demonstrieren.<br />
Ein Trainer weiß auch nicht alles.<br />
Mal ehrlich, wer definiert schon so... mit Klammern, ist doch altmodisch <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1517612</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1517612</guid><dc:creator><![CDATA[ceplusplus*loggedoff]]></dc:creator><pubDate>Tue, 27 May 2008 12:27:51 GMT</pubDate></item></channel></rss>