<?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[Abfrage Rückgabewerte?]]></title><description><![CDATA[<pre><code>if (foo() == ACK_FAIL)
		std::cout &lt;&lt; &quot;ACK_FAIL&quot; &lt;&lt; std::endl;
	else if (foo() == TIMEOUT)
		std::cout &lt;&lt; &quot;TIMEOUT&quot; &lt;&lt; std::endl;
	else
		std::cout &lt;&lt; &quot;WTF&quot; &lt;&lt; std::endl;
</code></pre>
<p>Das geht nicht doppel Aufruf von foo(). Mir ist klar das ich den Wert davor in eine var schreiben kann. Aber was ist die kürzeste Lösung dafür und beste?</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/330883/abfrage-rückgabewerte</link><generator>RSS for Node</generator><lastBuildDate>Thu, 02 Jul 2026 22:50:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/330883.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 30 Jan 2015 16:32:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 16:32:07 GMT]]></title><description><![CDATA[<pre><code>if (foo() == ACK_FAIL)
		std::cout &lt;&lt; &quot;ACK_FAIL&quot; &lt;&lt; std::endl;
	else if (foo() == TIMEOUT)
		std::cout &lt;&lt; &quot;TIMEOUT&quot; &lt;&lt; std::endl;
	else
		std::cout &lt;&lt; &quot;WTF&quot; &lt;&lt; std::endl;
</code></pre>
<p>Das geht nicht doppel Aufruf von foo(). Mir ist klar das ich den Wert davor in eine var schreiben kann. Aber was ist die kürzeste Lösung dafür und beste?</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440523</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440523</guid><dc:creator><![CDATA[taaaada]]></dc:creator><pubDate>Fri, 30 Jan 2015 16:32:07 GMT</pubDate></item><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 16:35:04 GMT]]></title><description><![CDATA[<p>taaaada schrieb:</p>
<blockquote>
<pre><code>if (foo() == ACK_FAIL)
		std::cout &lt;&lt; &quot;ACK_FAIL&quot; &lt;&lt; std::endl;
	else if (foo() == TIMEOUT)
		std::cout &lt;&lt; &quot;TIMEOUT&quot; &lt;&lt; std::endl;
	else
		std::cout &lt;&lt; &quot;WTF&quot; &lt;&lt; std::endl;
</code></pre>
<p>Das geht nicht doppel Aufruf von foo(). Mir ist klar das ich den Wert davor in eine var schreiben kann. Aber was ist die kürzeste Lösung dafür und beste?</p>
<p>Gruß</p>
</blockquote>
<p>Ich bin verwirrt, wieso soll das nicht gehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440524</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440524</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Fri, 30 Jan 2015 16:35:04 GMT</pubDate></item><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 16:36:32 GMT]]></title><description><![CDATA[<p>Weil foo() beim zweiten Aufruf ein anderes Ergebnis als beim ersten liefern könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440525</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440525</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Fri, 30 Jan 2015 16:36:32 GMT</pubDate></item><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 16:39:33 GMT]]></title><description><![CDATA[<p>Müll.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440526</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440526</guid><dc:creator><![CDATA[Jodocus]]></dc:creator><pubDate>Fri, 30 Jan 2015 16:39:33 GMT</pubDate></item><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 16:49:55 GMT]]></title><description><![CDATA[<pre><code>switch(MY_VALUE)
{
case ACK_FAIL: {std::cout &lt;&lt; &quot;ACK_FAIL&quot; &lt;&lt; std::endl;} break;
case TIMEOUT : {std::cout &lt;&lt; &quot;TIMEOUT&quot; &lt;&lt; std::endl;} break;
default: {std::cout &lt;&lt; &quot;WTF&quot; &lt;&lt; std::endl;}
}
</code></pre>
<p>Dann so?<br />
ACK_FILE und TIMEOUT sind doch bestimmt enums, oder?</p>
<p>Ansonsten ist mir nicht klar warum foo() zweimal hintereinander etwas anderes zurückgeben soll.<br />
Es sei denn es sind mehrere Threads im Spiel und dann kannst du dich auf das was da zurückkommt ohne lock sowieso nicht verlassen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440527</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440527</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Fri, 30 Jan 2015 16:49:55 GMT</pubDate></item><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 16:50:09 GMT]]></title><description><![CDATA[<p>Ruvi schrieb:</p>
<blockquote>
<pre><code>switch(MY_VALUE)
{
case ACK_FAIL: {} break;
case TIMEOUT : {} break;
}
</code></pre>
<p>Dann so?<br />
ACK_FILE und TIMEOUT sind doch bestimmt enums, oder?</p>
<p>Ansonsten ist mir nicht klar warum foo() zweimal hintereinander etwas anderes zurückgeben soll.<br />
Es sei denn es sind mehrere Threads im Spiel und dann kannst du dich auf das was da zurückkommt ohne lock sowieso nicht verlassen.</p>
</blockquote>
<p>Was ist, wenn z.B. irgendeine Netzwerkabfrage gemacht wird?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440529</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440529</guid><dc:creator><![CDATA[Jodocus]]></dc:creator><pubDate>Fri, 30 Jan 2015 16:50:09 GMT</pubDate></item><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 17:03:04 GMT]]></title><description><![CDATA[<p>Jodocus schrieb:</p>
<blockquote>
<p>Was ist, wenn z.B. irgendeine Netzwerkabfrage gemacht wird?</p>
</blockquote>
<p>Ja, dann könnte es natürlich vorkommen, allerdings kannst du dich auch in dem Fall nicht darauf verlassen.<br />
Der Drucker kann auch ausgestöpselt werden nachdem du fragst ist der Drucker da?</p>
<p>Von daher könnte man die philosophische Frage stellen, warum vorher überhaupt fragen, ob der Drucker da ist, wenn man den Fall sowieso behandeln muss, dass der Drucker zwischen Frage und Aktion oder während der Aktion nicht mehr reagiert/da ist?</p>
<p>Es wäre auf jedenfall hilfreich zu wissen in welchem Kontext die Funktion foo() aufgerufen wird und was sie genau zurückgibt. Bzw. was die eigentliche Frage ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440530</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440530</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Fri, 30 Jan 2015 17:03:04 GMT</pubDate></item><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 17:14:18 GMT]]></title><description><![CDATA[<p>Vielleicht dauert es auch einfach ewig foo() zu berechnen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440531</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440531</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Fri, 30 Jan 2015 17:14:18 GMT</pubDate></item><item><title><![CDATA[Reply to Abfrage Rückgabewerte? on Fri, 30 Jan 2015 17:21:24 GMT]]></title><description><![CDATA[<p>Nathan schrieb:</p>
<blockquote>
<p>Vielleicht dauert es auch einfach ewig foo() zu berechnen?</p>
</blockquote>
<p>Vielleicht löst ein zweimaliges Aufrufen von foo() auch eine katastrophale Sequenz von Ereignissen aus die zur Zerstörung der Menschheit führen.</p>
<p>Who knows. :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440533</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440533</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Fri, 30 Jan 2015 17:21:24 GMT</pubDate></item></channel></rss>