<?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[iostream: stream states]]></title><description><![CDATA[<p>Hi,<br />
ich beschäftige mich momentan näher mit Streams und es gibt einige Sachen die ich nicht verstehe und mir Kopfschmerzen bereiten.</p>
<p>z.B.:<br />
Ich möchte ein Config File mit 5 Zeilen einlesen und mein Code dazu sieht so aus:</p>
<pre><code>bool Foo::load_config(){

    ifstream input(&quot;.\\filepaths.txt&quot;);

    if (!input.is_open())
        return false;

    string tmp;
    tmp.reserve(40);

    while (input &gt;&gt; tmp){
//        cout &lt;&lt; input.rdstate() &lt;&lt; endl;
        filepaths.emplace_back(tmp);

    }

    if (input.rdstate() == ios_base::eofbit)
        return true;
    else return false;

}
</code></pre>
<p>Soweit ich das bis jetzt verstanden habe bricht die While-Schleife ab sobald etwas schiefgeht oder eof erreicht ist<br />
Der Status des Streams kann mit .rdstate() abgefragt werden.</p>
<p>1. Der rdstate() des Streams ist während der ersten 4 Durchläufe der While-Schleife &quot;0&quot;. Beim 5 Durchlauf (letzte Zeile) wird der rdstate() des Streams auf eofbit gesetzt.</p>
<p>1. Frage: Wie kann er während er die letzte Zeile liest schon wissen, dass danach nichts mehr kommt? Gibt es hinter dem letzten Buchstaben einer Textdatei ein &quot;hier ist Ende&quot; Zeichen? Ich finde es irgendwie merkwürdig, dass er den Stream-state auf eofbit setzt und dann noch einmal durch die Schleife rennt.</p>
<p>2. Der rdstate() des Streams wird nachdem er die Schleife verlässt von Eofbit(1) auf &quot;3&quot; geändert. Ich habe leider nicht rausgefunden was 3 ist.<br />
Weiß das jemand?</p>
<p>Goodbit = 0<br />
Eofbit = 1<br />
Failbit = 2<br />
Badbit = 4</p>
<p>Warum ich das so genau Frage:<br />
Ich möchte, dass die bool load_config(); Funktion false zurückgibt in Folgenden Fällen.<br />
1. Datei konnte nicht geöffnet werden<br />
2. Failbit wurde gesetzt<br />
3. Badbit wurde gesetzt.</p>
<p>Mein Weg dies zu tun war unter der While-Schleife den rdstate des Streams abzufragen und bei ios_base::eofbit &quot;True&quot; zurückzugeben und ansonsten &quot;False&quot;.</p>
<p>Wie weiter oben geschrieben ist der rdstate des Streams aber 3 und nicht 1.<br />
Weiß jemand, wie ich mein Ziel trotzdem erreichen kann oder kann mir dieses Verhalten erklären?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/327326/iostream-stream-states</link><generator>RSS for Node</generator><lastBuildDate>Thu, 09 Jul 2026 11:43:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/327326.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 04 Aug 2014 21:46:51 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to iostream: stream states on Mon, 04 Aug 2014 21:50:14 GMT]]></title><description><![CDATA[<p>Hi,<br />
ich beschäftige mich momentan näher mit Streams und es gibt einige Sachen die ich nicht verstehe und mir Kopfschmerzen bereiten.</p>
<p>z.B.:<br />
Ich möchte ein Config File mit 5 Zeilen einlesen und mein Code dazu sieht so aus:</p>
<pre><code>bool Foo::load_config(){

    ifstream input(&quot;.\\filepaths.txt&quot;);

    if (!input.is_open())
        return false;

    string tmp;
    tmp.reserve(40);

    while (input &gt;&gt; tmp){
//        cout &lt;&lt; input.rdstate() &lt;&lt; endl;
        filepaths.emplace_back(tmp);

    }

    if (input.rdstate() == ios_base::eofbit)
        return true;
    else return false;

}
</code></pre>
<p>Soweit ich das bis jetzt verstanden habe bricht die While-Schleife ab sobald etwas schiefgeht oder eof erreicht ist<br />
Der Status des Streams kann mit .rdstate() abgefragt werden.</p>
<p>1. Der rdstate() des Streams ist während der ersten 4 Durchläufe der While-Schleife &quot;0&quot;. Beim 5 Durchlauf (letzte Zeile) wird der rdstate() des Streams auf eofbit gesetzt.</p>
<p>1. Frage: Wie kann er während er die letzte Zeile liest schon wissen, dass danach nichts mehr kommt? Gibt es hinter dem letzten Buchstaben einer Textdatei ein &quot;hier ist Ende&quot; Zeichen? Ich finde es irgendwie merkwürdig, dass er den Stream-state auf eofbit setzt und dann noch einmal durch die Schleife rennt.</p>
<p>2. Der rdstate() des Streams wird nachdem er die Schleife verlässt von Eofbit(1) auf &quot;3&quot; geändert. Ich habe leider nicht rausgefunden was 3 ist.<br />
Weiß das jemand?</p>
<p>Goodbit = 0<br />
Eofbit = 1<br />
Failbit = 2<br />
Badbit = 4</p>
<p>Warum ich das so genau Frage:<br />
Ich möchte, dass die bool load_config(); Funktion false zurückgibt in Folgenden Fällen.<br />
1. Datei konnte nicht geöffnet werden<br />
2. Failbit wurde gesetzt<br />
3. Badbit wurde gesetzt.</p>
<p>Mein Weg dies zu tun war unter der While-Schleife den rdstate des Streams abzufragen und bei ios_base::eofbit &quot;True&quot; zurückzugeben und ansonsten &quot;False&quot;.</p>
<p>Wie weiter oben geschrieben ist der rdstate des Streams aber 3 und nicht 1.<br />
Weiß jemand, wie ich mein Ziel trotzdem erreichen kann oder kann mir dieses Verhalten erklären?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412019</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412019</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Mon, 04 Aug 2014 21:50:14 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Mon, 04 Aug 2014 22:25:58 GMT]]></title><description><![CDATA[<p>1+2=3<br />
Das Fail- und das Eofbit sind gesetzt. Wenn deine Datei am Ende keinen Zeilenumbruch hat, wird bis zum Dateiende gelesen, deshalb ist EOF schon gefunden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412022</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412022</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Mon, 04 Aug 2014 22:25:58 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Mon, 04 Aug 2014 22:41:39 GMT]]></title><description><![CDATA[<p>manni66 schrieb:</p>
<blockquote>
<p>1+2=3<br />
Das Fail- und das Eofbit sind gesetzt. Wenn deine Datei am Ende keinen Zeilenumbruch hat, wird bis zum Dateiende gelesen, deshalb ist EOF schon gefunden.</p>
</blockquote>
<p>o_O<br />
Er addiert die States?<br />
Wenn nach eofbit ein badbit kommt ist der State dann 5 ?<br />
Wie baut man denn dann solide Abfragen?</p>
<p>Das bedeutet doch eigentlich, wenn ich es korrekt haben will müsste die letzte Operation in der while-Schleife ein if eofbit break sein.<br />
Damit es beim nächsten Read nicht zu einem logischen I/O Error kommt.</p>
<p>Wobei ich die if-Abfrage in der Schleife schon irgendwie ziemlich häßlich finde.</p>
<pre><code>bool Foo::load_config(){

    ifstream input(&quot;.\\filepaths.txt&quot;);

    if (!input.is_open())
        return false;

    string tmp;
    tmp.reserve(40);

    while (input &gt;&gt; tmp){
//        cout &lt;&lt; input.rdstate() &lt;&lt; endl;
        filepaths.emplace_back(tmp);

        if (input.rdstate() == ios_base::eofbit)
            break;
    }

    if (input.rdstate() == ios_base::eofbit)
        return true;
    else return false;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2412023</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412023</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Mon, 04 Aug 2014 22:41:39 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Mon, 04 Aug 2014 22:48:23 GMT]]></title><description><![CDATA[<p>Es sind, wie der Name schon sagt, Bits. Da können halt auch mehrere gesetzt sein. Der stream hat aber auch Funktionen (eof, fail, ...) um sie abzufragen. Die if-Abfrage ist nicht notwendig, benutze einfach die eof Funktion für das return.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412024</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Mon, 04 Aug 2014 22:48:23 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Mon, 04 Aug 2014 23:14:15 GMT]]></title><description><![CDATA[<p>manni66 schrieb:</p>
<blockquote>
<p>Es sind, wie der Name schon sagt, Bits. Da können halt auch mehrere gesetzt sein. Der stream hat aber auch Funktionen (eof, fail, ...) um sie abzufragen. Die if-Abfrage ist nicht notwendig, benutze einfach die eof Funktion für das return.</p>
</blockquote>
<p>Danke, das funktioniert, allerdings irritiert mich nur irgendwie das Konzept dahinter.</p>
<p>Ich meine das bedeutet, dass bei jeder I/O Streamoperation am Ende ein logischer I/O Error (failbit) kommt.</p>
<p>Kann denn ein logischer I/O Error(failbit) auch an einer anderen Stelle geschehen, als bei der letzten read Operation oder ist der logische I/O Error eigentlich gleichbedeutend mit eof?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412025</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412025</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Mon, 04 Aug 2014 23:14:15 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Mon, 04 Aug 2014 23:43:27 GMT]]></title><description><![CDATA[<p>Fail passiert immer, wenn man versucht etwas zu lesen, was nicht da ist:</p>
<pre><code class="language-cpp">#include &lt;string&gt;
#include &lt;sstream&gt;
#include &lt;iostream&gt;

void print_state( std::istream const &amp; is )
{
	if( is.eof() )
		std::cout &lt;&lt; &quot;eof &quot;;
	if( is.fail() )
		std::cout &lt;&lt; &quot;fail &quot;;
	if( is.bad() )
		std::cout &lt;&lt; &quot;bad &quot;;
	if( is.good() )
		std::cout &lt;&lt; &quot;good&quot;;

	std::cout.put( '\n' );
}

int main()
{
	std::stringstream ss{ &quot;foo 42 bar&quot; };

	std::string str;
	unsigned number;

	// vielleicht eine Zahl lesen?
	ss &gt;&gt; number;
	print_state( ss ); // -&gt; fail
	ss.clear();

	// Nein? Dann halt einen String
	ss &gt;&gt; str;
	print_state( ss ); // -&gt; good	

	// jetzt vielleicht eine Zahl?
	ss &gt;&gt; number;
	print_state( ss ); // -&gt; good

	// noch eine?
	ss &gt;&gt; number;
	print_state( ss ); // -&gt; fail. Njet.
	ss.clear();

	// Dann halt einen String
	ss &gt;&gt; str;
	print_state( ss ); // -&gt; jep, kein fail. aber eof -&gt; es kommt nichts mehr.
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2412027</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412027</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Mon, 04 Aug 2014 23:43:27 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 00:04:18 GMT]]></title><description><![CDATA[<p>Swordfish schrieb:</p>
<blockquote>
<pre><code class="language-cpp">void print_state( std::istream const &amp; is )
{
	if( is.eof() )
		std::cout &lt;&lt; &quot;eof &quot;;
	if( is.fail() )
		std::cout &lt;&lt; &quot;fail &quot;;
	if( is.bad() )
		std::cout &lt;&lt; &quot;bad &quot;;
	if( is.good() )
		std::cout &lt;&lt; &quot;good&quot;;

	std::cout.put( '\n' );
}
</code></pre>
</blockquote>
<p>Gute Funktion. Könnte in die FAQ rein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412028</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412028</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 05 Aug 2014 00:04:18 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 07:00:55 GMT]]></title><description><![CDATA[<p>Ruvi schrieb:</p>
<blockquote>
<p>manni66 schrieb:</p>
<blockquote>
<p>1+2=3<br />
Das Fail- und das Eofbit sind gesetzt. Wenn deine Datei am Ende keinen Zeilenumbruch hat, wird bis zum Dateiende gelesen, deshalb ist EOF schon gefunden.</p>
</blockquote>
<p>o_O<br />
Er addiert die States?<br />
Wenn nach eofbit ein badbit kommt ist der State dann 5 ?<br />
Wie baut man denn dann solide Abfragen?</p>
</blockquote>
<p>Nein, er verodert die einzelnen States. Und das ist auch der Grund warum das nur die Zweierpotenzen sind. Zufällig sieht dann die Oder-Operation so aus wie ein Plus.</p>
<p>Und du kannst dir die einzelnen States mit einem Und wieder da raus holen:</p>
<pre><code>enum {
	GOOD = 0,
	EOF = 1,
	FAIL = 2,
	BAD = 4
};

int flags = EOF | BAD;

if ( flags == GOOD )
{
}
else
{
	if ( flags &amp; EOF == EOF )
	{}
	if ( flags &amp; FAIL == FAIL )
	{}
	if ( flags &amp; BAD == BAD )
	{}
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2412035</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412035</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Tue, 05 Aug 2014 07:00:55 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 07:18:28 GMT]]></title><description><![CDATA[<blockquote>
<p>Gute Funktion. Könnte in die FAQ rein.</p>
</blockquote>
<p>Wie wäre es mit</p>
<pre><code>#include &lt;iostream&gt;

std::ios&amp; print_state( std::ios&amp; is )
{
	std::ostream&amp; out = (&amp;is == &amp;std::cout? std::clog : std::cout); // Falls cout das failbit gesetzt hat
	if (is.good())
		out &lt;&lt; &quot;good&quot;;
	else
	{
		if (is.bad())
			out &lt;&lt; &quot;*bad* &quot;;
		if (is.eof())
			out &lt;&lt; &quot;eof &quot;;
		if (is.fail())
			out &lt;&lt; &quot;fail &quot;;
	}

	out &lt;&lt; '\n';
	return is;
}

int main()
{
	std::cout &lt;&lt; print_state;
	std::cin &gt;&gt; print_state;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2412038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412038</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Tue, 05 Aug 2014 07:18:28 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 11:44:36 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>std::cin &gt;&gt; print_state;
</code></pre>
</blockquote>
<p>Semkantik daneben!?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412087</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412087</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Tue, 05 Aug 2014 11:44:36 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 13:25:30 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>std::ios&amp; print_state( std::ios&amp; is )
</code></pre>
</blockquote>
<p>Super nützlicher Rückgabewert!</p>
<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>std::ostream&amp; out = (&amp;is == &amp;std::cout? std::clog : std::cout); // Falls cout das failbit gesetzt hat
</code></pre>
</blockquote>
<p>100% <a href="http://en.wikipedia.org/wiki/Principle_of_least_astonishment" rel="nofollow">POLA</a>-konform!</p>
<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>out &lt;&lt; &quot;*bad* &quot;;
</code></pre>
</blockquote>
<p><strong>*bad*</strong> bedarf ganz sicher besondere Aufmerksamkeit.</p>
<p>Die Leerzeichen sind sicher auch sehr nützlich vor dem Linebreak</p>
<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>out &lt;&lt; '\n';
</code></pre>
</blockquote>
<p>der in jede unscheinbare Ausgabefunktion hineingehört.</p>
<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>std::cout &lt;&lt; print_state &lt;&lt; '\n';
</code></pre>
</blockquote>
<p>Compile error. Aha, deshalb das <code>'\n'</code> . POLA ftw.</p>
<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>std::cin &gt;&gt; print_state;
</code></pre>
</blockquote>
<p>Ok, ich gebs auf. Da läuft was ganz grundsätzlich schief.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412098</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412098</guid><dc:creator><![CDATA[thedailywtf]]></dc:creator><pubDate>Tue, 05 Aug 2014 13:25:30 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 13:31:34 GMT]]></title><description><![CDATA[<p>Wundert mich eh, daß es ohne <code>template</code> vonstatten ging.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412100</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412100</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 05 Aug 2014 13:31:34 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 13:38:41 GMT]]></title><description><![CDATA[<p>thedailywtf schrieb:</p>
<blockquote>
<p>Arcoth schrieb:</p>
<blockquote>
<pre><code>std::cout &lt;&lt; print_state &lt;&lt; '\n';
</code></pre>
</blockquote>
<p>Compile error. Aha, deshalb das <code>'\n'</code> . POLA ftw.</p>
</blockquote>
<p>Eigentlich kein Comile error. Höchstens, wenn Du den komischen Rückgabetyp geändert hättest.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412101</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412101</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 05 Aug 2014 13:38:41 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 14:13:06 GMT]]></title><description><![CDATA[<p>thedailywtf schrieb:</p>
<blockquote>
<p><strong>*bad*</strong> bedarf ganz sicher besondere Aufmerksamkeit.</p>
</blockquote>
<p>Ja, warum nicht? Deutet schließlich auf einen irreparablen Fehler hin und sollte entsprechend gekennzeichnet werden.</p>
<p>thedailywtf schrieb:</p>
<blockquote>
<p>Die Leerzeichen sind sicher auch sehr nützlich vor dem Linebreak</p>
</blockquote>
<p>Nein, aber es ist ganz nützlich zwischen Wörtern. &quot;eoffail&quot; wäre nicht so lesbar, weißt du.<br />
Falls du dich allerdings auf das eine Leerzeichen in <code>&quot;fail &quot;</code> aufregst, muss ich dir sowohl zu deinen Adleraugen als auch zu deinem Scharfsinn gratulieren.</p>
<p>thedailywtf schrieb:</p>
<blockquote>
<p>der in jede unscheinbare Ausgabefunktion hineingehört.</p>
</blockquote>
<p>Komisch - bei Swordfish's Variante hast du dich nicht beschwert. Diesen Einwand hast du aber vorausgesehen und das Wörtchen <em>unscheinbar</em> eingebaut. Ich muss dir abermals zu deinem Scharfsinn gratulieren!</p>
<p>thedailywtf schrieb:</p>
<blockquote>
<p>Compile error</p>
</blockquote>
<p>Die Signatur der aufgerufenen Operatorfunktion ist übrigens</p>
<pre><code>basic_ostream&amp; operator&lt;&lt;( std::basic_ios&lt;CharT,Traits&gt;&amp; (*func)(std::basic_ios&lt;CharT,Traits&gt;&amp;) );
</code></pre>
<p>Zitieren musst du auch noch lernen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412105</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412105</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Tue, 05 Aug 2014 14:13:06 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 14:44:58 GMT]]></title><description><![CDATA[<p>Wenn man es mehr &quot;fancy&quot; haben will...</p>
<p>Könnte man nen Wrapper für <code>std::ios_base::iostate</code> machen und für diesen dann nen Stream-Insertion-Operator definieren.</p>
<p>Oder der Swordfish Variante nen zusätzlichen Output-Stream Parameter verpassen der zum Output verwendet wird.</p>
<p>Arcoth schrieb:</p>
<blockquote>
<p>thedailywtf schrieb:</p>
<blockquote>
<p>der in jede unscheinbare Ausgabefunktion hineingehört.</p>
</blockquote>
<p>Komisch - bei Swordfish's Variante hast du dich nicht beschwert. Diesen Einwand hast du aber vorausgesehen und das Wörtchen <em>unscheinbar</em> eingebaut. Ich muss dir abermals zu deinem Scharfsinn gratulieren!</p>
</blockquote>
<p>Swordfish's Variante ist eine benannte Funktion. Bei benannten Funktionen kommt es schonmal vor dass die nen &quot;\n&quot; rausschreiben.<br />
Bei einem Stream-Operator bzw. -Manipulator erwartet man es aber eher nicht.<br />
Wobei die eigentliche POLA Verletzung mMn. die ist dass ein Stream-Manipulator nicht &quot;seinen&quot; Stream manipuliert sondern stattdessen auf einem anderen Stream etwas ausgibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412110</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412110</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 05 Aug 2014 14:44:58 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 15:28:02 GMT]]></title><description><![CDATA[<p>Ihr habt doch alle einen an der Waffel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412121</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412121</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Tue, 05 Aug 2014 15:28:02 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 15:36:46 GMT]]></title><description><![CDATA[<p>Kellerautomat schrieb:</p>
<blockquote>
<p>Ihr habt doch alle einen an der Waffel.</p>
</blockquote>
<p>Ach quatsch, wir sind nur gründlich.</p>
<p>hustbaer schrieb:</p>
<blockquote>
<p>Bei benannten Funktionen kommt es schonmal vor dass die nen &quot;\n&quot; rausschreiben.</p>
</blockquote>
<p>Gemeint war natürlich '\n'. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412122</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412122</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 05 Aug 2014 15:36:46 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 17:28:45 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>hustbaer schrieb:</p>
<blockquote>
<p>Bei benannten Funktionen kommt es schonmal vor dass die nen &quot;\n&quot; rausschreiben.</p>
</blockquote>
<p>Gemeint war natürlich '\n'. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /></p>
</blockquote>
<p>Verstehe ich nicht.<br />
Was ist da der (relevante) Unterschied?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412140</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412140</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 05 Aug 2014 17:28:45 GMT</pubDate></item><item><title><![CDATA[Reply to iostream: stream states on Tue, 05 Aug 2014 17:52:16 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>volkard schrieb:</p>
<blockquote>
<p>Gemeint war natürlich '\n'. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /></p>
</blockquote>
<p>Was ist da der (relevante) Unterschied?</p>
</blockquote>
<p>Vergiss es. Volkard will mich bloß verarschen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2412145</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2412145</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Tue, 05 Aug 2014 17:52:16 GMT</pubDate></item></channel></rss>