<?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[Problem bei Switch Anweisung]]></title><description><![CDATA[<p>Hallo zusammen,<br />
ich habe folgendes Problem.<br />
Ich möchte in einem GLUT-Menü zwischen fliegen und gehen durch einen 3dimensionalen Raum umschalten.<br />
Menü und so weiter funktioniert alles, methoden für fliegen und gehen auch, nur die switch anweisung nicht.<br />
wenn ich nun alles zusammenfügen will habe ich sowas:<br />
...<br />
void menuCallback(int option) {<br />
switch (option) {<br />
case 1 : ;<br />
break;<br />
case 2 : ;<br />
break;<br />
}<br />
}</p>
<p>void createGLUTMenus() {<br />
int menu;<br />
menu = glutCreateMenu(menuCallback);<br />
glutAddMenuEntry(&quot;Fly&quot;,1);<br />
glutAddMenuEntry(&quot;Walk&quot;,2);<br />
glutAttachMenu(GLUT_RIGHT_BUTTON);<br />
}</p>
<p>...<br />
wie sage ich nun meiner switch anweisung das sie in modus fliegen bzw gehen wechseln soll</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/266353/problem-bei-switch-anweisung</link><generator>RSS for Node</generator><lastBuildDate>Thu, 03 Sep 2026 07:14:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/266353.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 07 May 2010 15:14:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 15:14:24 GMT]]></title><description><![CDATA[<p>Hallo zusammen,<br />
ich habe folgendes Problem.<br />
Ich möchte in einem GLUT-Menü zwischen fliegen und gehen durch einen 3dimensionalen Raum umschalten.<br />
Menü und so weiter funktioniert alles, methoden für fliegen und gehen auch, nur die switch anweisung nicht.<br />
wenn ich nun alles zusammenfügen will habe ich sowas:<br />
...<br />
void menuCallback(int option) {<br />
switch (option) {<br />
case 1 : ;<br />
break;<br />
case 2 : ;<br />
break;<br />
}<br />
}</p>
<p>void createGLUTMenus() {<br />
int menu;<br />
menu = glutCreateMenu(menuCallback);<br />
glutAddMenuEntry(&quot;Fly&quot;,1);<br />
glutAddMenuEntry(&quot;Walk&quot;,2);<br />
glutAttachMenu(GLUT_RIGHT_BUTTON);<br />
}</p>
<p>...<br />
wie sage ich nun meiner switch anweisung das sie in modus fliegen bzw gehen wechseln soll</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1893844</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893844</guid><dc:creator><![CDATA[dickescaio]]></dc:creator><pubDate>Fri, 07 May 2010 15:14:24 GMT</pubDate></item><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 15:23:49 GMT]]></title><description><![CDATA[<p>Wo genau ist dein Problem? Das sollte so gehen:</p>
<pre><code class="language-cpp">void menuCallback(int option) {
switch (option) 
 {
  case 1 :
   // In den Fliegen-Modus wechseln
   break;
  case 2 : 
   // In den Gehen-Modus wechseln
   break;
 }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1893850</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893850</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 07 May 2010 15:23:49 GMT</pubDate></item><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 15:32:49 GMT]]></title><description><![CDATA[<p>danke für die antwort.<br />
problem ist das er nicht wechselt. er bleibt stur beim gehen. so habe ich gehen und fliegen definiert</p>
<p>void Fly ( int a_keys, int x, int y ) // Create Special Function (required for arrow keys)<br />
{<br />
switch ( a_keys ) {<br />
case GLUT_KEY_UP: // When Up Arrow Is Pressed...<br />
camera.move(0.1f);<br />
break;<br />
case GLUT_KEY_DOWN: // When Down Arrow Is Pressed...<br />
camera.move(-0.1f);<br />
break;<br />
case GLUT_KEY_LEFT: // When Left Arrow Is Pressed...<br />
camera.strafe(-0.1f);<br />
break;<br />
case GLUT_KEY_RIGHT: // When Right Arrow Is Pressed...<br />
camera.strafe(0.1f);<br />
break;<br />
default:<br />
break;<br />
}<br />
}</p>
<p>void Walk ( int a_keys, int x, int y ) // Create Special Function (required for arrow keys)<br />
{<br />
switch ( a_keys ) {<br />
case GLUT_KEY_UP: // When Up Arrow Is Pressed...<br />
camera.moveOnFloor(0.1f);<br />
break;<br />
case GLUT_KEY_DOWN: // When Down Arrow Is Pressed...<br />
camera.moveOnFloor(-0.1f);<br />
break;<br />
case GLUT_KEY_LEFT: // When Left Arrow Is Pressed...<br />
camera.strafeOnFloor(-0.1f);<br />
break;<br />
case GLUT_KEY_RIGHT: // When Right Arrow Is Pressed...<br />
camera.strafeOnFloor(0.1f);<br />
break;<br />
default:<br />
break;<br />
}</p>
<p>}</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1893854</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893854</guid><dc:creator><![CDATA[dickescaio]]></dc:creator><pubDate>Fri, 07 May 2010 15:32:49 GMT</pubDate></item><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 15:38:21 GMT]]></title><description><![CDATA[<p>Das ist ja schön für dich, aber wenn die switch Anweisung &quot;nicht funktioniert&quot;, dann ist anzunehmen, dass das was du im switch machst, nicht funktioniert. Also: Was konkret machst du dort?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1893861</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893861</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 07 May 2010 15:38:21 GMT</pubDate></item><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 15:41:29 GMT]]></title><description><![CDATA[<p>normalerweise habe ich in cases werte übergeben. nun will ich ja eine funktion übergeben. allerdings habe ich auch nach studieren von einigen tutorials nicht verstanden wie ich diese an die cases anbinde</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1893865</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893865</guid><dc:creator><![CDATA[dickescaio]]></dc:creator><pubDate>Fri, 07 May 2010 15:41:29 GMT</pubDate></item><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 15:53:24 GMT]]></title><description><![CDATA[<p>dickescaio schrieb:</p>
<blockquote>
<p>normalerweise habe ich in cases werte übergeben. nun will ich ja eine funktion übergeben. allerdings habe ich auch nach studieren von einigen tutorials nicht verstanden wie ich diese an die cases anbinde</p>
</blockquote>
<p>Du könntest Funktionszeiger benutzen:</p>
<pre><code class="language-cpp">void (*bewegungsart)(int,int,int);

// ...

void menuCallback(int option) {
  switch (option) {
  case 1 : bewegungsart = Fly;
    break;
  case 2 : bewegungsart = Walk;
    break;
  }
}
</code></pre>
<p>Natürlich vorzugsweise nicht global, sondern als Rückgabewert, aber ich wollte das Beispiel übersichtlich halten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1893875</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893875</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 07 May 2010 15:53:24 GMT</pubDate></item><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 16:06:32 GMT]]></title><description><![CDATA[<p>wie müsste ich den bewegungsart dann definieren???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1893887</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893887</guid><dc:creator><![CDATA[dickescaio]]></dc:creator><pubDate>Fri, 07 May 2010 16:06:32 GMT</pubDate></item><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 16:09:31 GMT]]></title><description><![CDATA[<p>Als Funktionszeiger:</p>
<pre><code class="language-cpp">typedef void (*BewergungsartFunc)(int,int,int);

BewergungsartFunc bewegungsart = &amp;Fly;

bewegungsart();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1893892</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893892</guid><dc:creator><![CDATA[jkljkl]]></dc:creator><pubDate>Fri, 07 May 2010 16:09:31 GMT</pubDate></item><item><title><![CDATA[Reply to Problem bei Switch Anweisung on Fri, 07 May 2010 16:10:28 GMT]]></title><description><![CDATA[<p>jkljkl schrieb:</p>
<blockquote>
<p>Als Funktionszeiger:</p>
<pre><code class="language-cpp">typedef void (*BewergungsartFunc)(int,int,int);

BewergungsartFunc bewegungsart = &amp;Fly;

bewegungsart();
</code></pre>
</blockquote>
<p>Parameter fehlen, aber so vom Prinzip her.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1893894</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1893894</guid><dc:creator><![CDATA[jkljkl]]></dc:creator><pubDate>Fri, 07 May 2010 16:10:28 GMT</pubDate></item></channel></rss>