<?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[Komischer Fehler bei switch]]></title><description><![CDATA[<p>Hoi</p>
<p>Ich habe folgende Situation</p>
<pre><code class="language-cpp">string s1;

switch(s1)
{
    case &quot;a&quot;:;
    break;
   default:;
}
</code></pre>
<p>Jetzt bekomme ich immer folgende Fehler</p>
<pre><code>switch-Ausdruck des Typs 'class std::basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt;' nicht erlaubt
        Kein benutzerdefinierter Konvertierungsoperator verfuegbar, der diese Konvertierung durchfuehren kann, oder der Operator kann nicht aufgerufen werden
</code></pre>
<p>Da muss doch irgendetwas falsch sein, weil seit wann darf man, keine strings als switch Argumente angeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/137581/komischer-fehler-bei-switch</link><generator>RSS for Node</generator><lastBuildDate>Sat, 29 Aug 2026 19:41:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/137581.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 18 Feb 2006 18:37:56 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sat, 18 Feb 2006 18:37:56 GMT]]></title><description><![CDATA[<p>Hoi</p>
<p>Ich habe folgende Situation</p>
<pre><code class="language-cpp">string s1;

switch(s1)
{
    case &quot;a&quot;:;
    break;
   default:;
}
</code></pre>
<p>Jetzt bekomme ich immer folgende Fehler</p>
<pre><code>switch-Ausdruck des Typs 'class std::basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt;' nicht erlaubt
        Kein benutzerdefinierter Konvertierungsoperator verfuegbar, der diese Konvertierung durchfuehren kann, oder der Operator kann nicht aufgerufen werden
</code></pre>
<p>Da muss doch irgendetwas falsch sein, weil seit wann darf man, keine strings als switch Argumente angeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/997447</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997447</guid><dc:creator><![CDATA[PLOU]]></dc:creator><pubDate>Sat, 18 Feb 2006 18:37:56 GMT</pubDate></item><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sat, 18 Feb 2006 18:40:39 GMT]]></title><description><![CDATA[<p>Das durfte man noch nie.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/997449</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997449</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Sat, 18 Feb 2006 18:40:39 GMT</pubDate></item><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sat, 18 Feb 2006 18:42:52 GMT]]></title><description><![CDATA[<p>du darfst zeichen angeben</p>
<p>'a'</p>
<p>dann gehts</p>
]]></description><link>https://www.c-plusplus.net/forum/post/997452</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997452</guid><dc:creator><![CDATA[Mario Sandler]]></dc:creator><pubDate>Sat, 18 Feb 2006 18:42:52 GMT</pubDate></item><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sat, 18 Feb 2006 18:46:15 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>dann mus aber auch ein char-Typ für die switch-Bedingung genmmen werden.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/997459</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997459</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 18 Feb 2006 18:46:15 GMT</pubDate></item><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sat, 18 Feb 2006 18:46:15 GMT]]></title><description><![CDATA[<p>jop, strings darf man bei switch nicht benutzen, aber deinem case zufolge willste<br />
ja vlt nur einzelne zeichen vergleichen?<br />
also so:</p>
<pre><code class="language-cpp">char s1;

switch (s1)
{
   case 'a': 
               //mach was
               break;
    default:
               //mach was
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/997458</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997458</guid><dc:creator><![CDATA[icepacker]]></dc:creator><pubDate>Sat, 18 Feb 2006 18:46:15 GMT</pubDate></item><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sat, 18 Feb 2006 18:47:39 GMT]]></title><description><![CDATA[<p><a href="http://Storm.Xapek.de" rel="nofollow">Storm.Xapek.de</a> schrieb:</p>
<blockquote>
<p>du darfst zeichen angeben</p>
<p>'a'</p>
<p>dann gehts</p>
</blockquote>
<p>Nö, switch darf nur für ints und chars benutzt werden (wegen Sprungtabelle). Der übergebene string s1 ist keine Zahl.</p>
<p>MfG</p>
<p>GPC</p>
]]></description><link>https://www.c-plusplus.net/forum/post/997461</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997461</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Sat, 18 Feb 2006 18:47:39 GMT</pubDate></item><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sat, 18 Feb 2006 22:12:12 GMT]]></title><description><![CDATA[<p>Ahh, danke</p>
<p>Eine andere Frage habe ich aber noch.</p>
<p>In welcher Reihenfolge werden einer Funktion die Argumente übergeben?</p>
<pre><code class="language-cpp">function(var1,var2,var3);
</code></pre>
<p>wird zuerst var1 oder var3 übergeben??</p>
<p>und gilt das gleiche wenn man Funktionen als Argumente hat?</p>
<pre><code class="language-cpp">function(func1(),func2(),func3());
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/997565</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997565</guid><dc:creator><![CDATA[PLOU]]></dc:creator><pubDate>Sat, 18 Feb 2006 22:12:12 GMT</pubDate></item><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sat, 18 Feb 2006 22:42:46 GMT]]></title><description><![CDATA[<p>wenn du meinst ob bei</p>
<pre><code class="language-cpp">meineFunktion(f1(), f2(), f3());
</code></pre>
<p>zuerst f1, f2 oder f3 aufgerufen werden: das darf der Compiler AFAIK machen wie er will</p>
]]></description><link>https://www.c-plusplus.net/forum/post/997582</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997582</guid><dc:creator><![CDATA[Blue-Tiger]]></dc:creator><pubDate>Sat, 18 Feb 2006 22:42:46 GMT</pubDate></item><item><title><![CDATA[Reply to Komischer Fehler bei switch on Sun, 19 Feb 2006 11:00:16 GMT]]></title><description><![CDATA[<p>Blue-Tiger schrieb:</p>
<blockquote>
<p>wenn du meinst ob bei</p>
<pre><code class="language-cpp">meineFunktion(f1(), f2(), f3());
</code></pre>
<p>zuerst f1, f2 oder f3 aufgerufen werden: das darf der Compiler AFAIK machen wie er will</p>
</blockquote>
<p>Korrekt. Der Compiler muss nur sicherstellen, dass f1, f2 und f3 aufgerufen wurden, bevor meineFunktion aufgerufen wird. In welcher Reihenfolge f1-f3 aufgerufen werden wird vom Standard aber nicht festgelegt. Jede beliebige Reihenfolge ist denkbar inklusive einer Parallelausführung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/997689</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/997689</guid><dc:creator><![CDATA[HumeSikkins]]></dc:creator><pubDate>Sun, 19 Feb 2006 11:00:16 GMT</pubDate></item></channel></rss>