<?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[op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream]]></title><description><![CDATA[<p>Hi</p>
<p>ich habe seit langer zeit mal wieder ein wenig programmiert und dabei kam ne bruch klasse raus(iwelche aufgaben irgend ner uni, die ich auf die schneller gefunden habe halt). nun habe ich aber bei op&gt;&gt; (und damit auch op&lt;&lt;) ein problem:</p>
<p><code>1/1</code> als ausgabe sieht doof aus, also soll er nur <code>1</code> ausgeben. kein problem. aber eine <code>1</code> soll eben auch korrekt eingelesen werden...<br />
also hab ich mir folgendes zusammen gebaut:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

template&lt;char X&gt;
std::istream&amp; skip_char(std::istream&amp; s)
{
	if( !s )
		return s;

	auto next_char = s.get();
	if( next_char == std::istream::traits_type::eof() )
	{
		s.setstate(std::ios::eofbit);
		return s;
	}

	if( static_cast&lt;char&gt;(next_char) != X )
	{
		s.unget();
		s.setstate(std::ios::failbit);
	}

	return s;
}

template&lt;typename T&gt;
struct fraction
{
	fraction(const T&amp; nominator = T(0), const T&amp; denominator = T(1))
	:	lhs_(nominator), rhs_(denominator)
	{}

	const T&amp; nom() const { return lhs_; }
	T&amp; nom() { return lhs_; }

	const T&amp; denom() const { return rhs_; }
	T&amp; denom() { return rhs_; }

private:
	T lhs_;
	T rhs_;
};

template&lt;typename T&gt;
std::istream&amp; operator&gt;&gt;(std::istream&amp; s, fraction&lt;T&gt;&amp; to_set)
{
	s &gt;&gt; to_set.nom();
	if( !s )
		return s;

	s &gt;&gt; skip_char&lt;'/'&gt;;
	if( !s )
	{
		s.clear(s.rdstate() &amp; ~std::ios::failbit);
		to_set.denom() = 1;
	}
	else
		s &gt;&gt; to_set.denom();

	return s;
}
template&lt;typename T&gt;
std::ostream&amp; operator&lt;&lt;(std::ostream&amp; s, const fraction&lt;T&gt;&amp; out)
{
	s &lt;&lt; out.nom();
	if( out.denom() != T(1) )
		s &lt;&lt; '/' &lt;&lt; out.denom();
	return s;
}

#include &lt;cstdlib&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;sstream&gt;
#include &lt;vector&gt;

int main()
{
	std::stringstream inss(&quot;1 1/13 4/17 4test&quot;);
	std::ifstream in; in.set_rdbuf(inss.rdbuf());
	std::stringstream out;

	std::vector&lt; my::fraction&lt;int&gt; &gt; vec;

	for( my::fraction&lt;int&gt; i; in &gt;&gt; i; )
		vec.push_back(i);

	std::string rest;
	std::getline(in, rest);

	for( auto &amp;i : vec )
		out &lt;&lt; i &lt;&lt; ' ';

	std::cout &lt;&lt; out.str() &lt;&lt; rest &lt;&lt; std::endl;
	std::system(&quot;PAUSE&quot;);
}
</code></pre>
<p>der vector (und damit out) sieht schon mal ziemlich gut aus. das problem ist:<br />
- die implementierung erscheint mir äußerst frickelig<br />
- in der implementierung sind sicherlich einige (sonder-)fälle nicht bedacht<br />
- das <code>&quot;test&quot;</code> , welches durch <code>getline</code> in <code>rest</code> stehen sollte, ist nicht da</p>
<p>-&gt; hat jemand nen besseren vorschlag als lösung?<br />
-&gt; hab ich bei dem getline nen denkfehler? oder wieso funktioniert das nicht? <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=":O"
      alt="😮"
    /></p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/327128/op-gt-gt-op-lt-lt-stream</link><generator>RSS for Node</generator><lastBuildDate>Thu, 09 Jul 2026 20:22:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/327128.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 24 Jul 2014 17:44:56 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Thu, 24 Jul 2014 17:44:56 GMT]]></title><description><![CDATA[<p>Hi</p>
<p>ich habe seit langer zeit mal wieder ein wenig programmiert und dabei kam ne bruch klasse raus(iwelche aufgaben irgend ner uni, die ich auf die schneller gefunden habe halt). nun habe ich aber bei op&gt;&gt; (und damit auch op&lt;&lt;) ein problem:</p>
<p><code>1/1</code> als ausgabe sieht doof aus, also soll er nur <code>1</code> ausgeben. kein problem. aber eine <code>1</code> soll eben auch korrekt eingelesen werden...<br />
also hab ich mir folgendes zusammen gebaut:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

template&lt;char X&gt;
std::istream&amp; skip_char(std::istream&amp; s)
{
	if( !s )
		return s;

	auto next_char = s.get();
	if( next_char == std::istream::traits_type::eof() )
	{
		s.setstate(std::ios::eofbit);
		return s;
	}

	if( static_cast&lt;char&gt;(next_char) != X )
	{
		s.unget();
		s.setstate(std::ios::failbit);
	}

	return s;
}

template&lt;typename T&gt;
struct fraction
{
	fraction(const T&amp; nominator = T(0), const T&amp; denominator = T(1))
	:	lhs_(nominator), rhs_(denominator)
	{}

	const T&amp; nom() const { return lhs_; }
	T&amp; nom() { return lhs_; }

	const T&amp; denom() const { return rhs_; }
	T&amp; denom() { return rhs_; }

private:
	T lhs_;
	T rhs_;
};

template&lt;typename T&gt;
std::istream&amp; operator&gt;&gt;(std::istream&amp; s, fraction&lt;T&gt;&amp; to_set)
{
	s &gt;&gt; to_set.nom();
	if( !s )
		return s;

	s &gt;&gt; skip_char&lt;'/'&gt;;
	if( !s )
	{
		s.clear(s.rdstate() &amp; ~std::ios::failbit);
		to_set.denom() = 1;
	}
	else
		s &gt;&gt; to_set.denom();

	return s;
}
template&lt;typename T&gt;
std::ostream&amp; operator&lt;&lt;(std::ostream&amp; s, const fraction&lt;T&gt;&amp; out)
{
	s &lt;&lt; out.nom();
	if( out.denom() != T(1) )
		s &lt;&lt; '/' &lt;&lt; out.denom();
	return s;
}

#include &lt;cstdlib&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;sstream&gt;
#include &lt;vector&gt;

int main()
{
	std::stringstream inss(&quot;1 1/13 4/17 4test&quot;);
	std::ifstream in; in.set_rdbuf(inss.rdbuf());
	std::stringstream out;

	std::vector&lt; my::fraction&lt;int&gt; &gt; vec;

	for( my::fraction&lt;int&gt; i; in &gt;&gt; i; )
		vec.push_back(i);

	std::string rest;
	std::getline(in, rest);

	for( auto &amp;i : vec )
		out &lt;&lt; i &lt;&lt; ' ';

	std::cout &lt;&lt; out.str() &lt;&lt; rest &lt;&lt; std::endl;
	std::system(&quot;PAUSE&quot;);
}
</code></pre>
<p>der vector (und damit out) sieht schon mal ziemlich gut aus. das problem ist:<br />
- die implementierung erscheint mir äußerst frickelig<br />
- in der implementierung sind sicherlich einige (sonder-)fälle nicht bedacht<br />
- das <code>&quot;test&quot;</code> , welches durch <code>getline</code> in <code>rest</code> stehen sollte, ist nicht da</p>
<p>-&gt; hat jemand nen besseren vorschlag als lösung?<br />
-&gt; hab ich bei dem getline nen denkfehler? oder wieso funktioniert das nicht? <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=":O"
      alt="😮"
    /></p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410332</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410332</guid><dc:creator><![CDATA[bobbert]]></dc:creator><pubDate>Thu, 24 Jul 2014 17:44:56 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Thu, 24 Jul 2014 18:01:40 GMT]]></title><description><![CDATA[<pre><code>#include &lt;istream&gt;
#include &lt;ostream&gt;

template&lt;typename T&gt;
struct fraction
{
	fraction(const T&amp; numerator = T(0), const T&amp; denominator = T(1))
	:   mNum(numerator), mDenom(denominator)
	{}

	const T&amp; num() const { return mNum; }
	T&amp; num() { return mNum; }

	const T&amp; denom() const { return mDenom; }
	T&amp; denom() { return mDenom; }

private:
	T mNum;
	T mDenom;
};

template&lt;typename T&gt;
std::istream&amp; operator&gt;&gt;(std::istream&amp; s, fraction&lt;T&gt;&amp; to_set)
{
	if (!(s &gt;&gt; to_set.num()))
		return s;

	s &gt;&gt; std::ws;

	if (s.peek() == '/')
	{
		s.ignore();
		s &gt;&gt; to_set.denom();
	}
	else
		to_set.denom() = 1;

	return s;
}

template&lt;typename T&gt;
std::ostream&amp; operator&lt;&lt;(std::ostream&amp; s, const fraction&lt;T&gt;&amp; out)
{
	s &lt;&lt; out.num();

	if (out.denom() != T(1))
		s &lt;&lt; '/' &lt;&lt; out.denom();

	return s;
}

#include &lt;iostream&gt;
#include &lt;sstream&gt;

int main()
{
    std::stringstream inss(&quot;1 1/13 4/17 4test&quot;);

    for( fraction&lt;int&gt; i; inss &gt;&gt; i; )
        std::cout &lt;&lt; i &lt;&lt; '\n';
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2410335</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410335</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Thu, 24 Jul 2014 18:01:40 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Thu, 24 Jul 2014 18:41:15 GMT]]></title><description><![CDATA[<p>oh. peek gibts da also - danke : D</p>
<p>bin vorhin dann auch noch auf meinen getline-fail gekommen: da fehlt natürlich nen <code>in.clear()</code> davor</p>
<p>PS: Beim Antworten wird (wie vor ~5 Jahren) noch immer kein html-decode auf den Thread-Titel angewendet...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410344</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410344</guid><dc:creator><![CDATA[bobbert]]></dc:creator><pubDate>Thu, 24 Jul 2014 18:41:15 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Thu, 24 Jul 2014 18:49:44 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">T&amp; num() { return mNum; }
</code></pre>
<p>(sowie gleiches bei denom()) finde ich doch arg unsauber (dann kann man gleich public Member nehmen). Sollte der operator&gt;&gt; nicht besser friend der Klasse fraction sein (um dann direkt die Member zu setzen)?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410347</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410347</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Thu, 24 Jul 2014 18:49:44 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Thu, 24 Jul 2014 19:10:17 GMT]]></title><description><![CDATA[<blockquote>
<p>Sollte der operator&gt;&gt; nicht besser friend der Klasse fraction sein (um dann direkt die Member zu setzen)?</p>
</blockquote>
<p><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="😮"
    /> Warum denn das?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410352</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410352</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Thu, 24 Jul 2014 19:10:17 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 07:41:13 GMT]]></title><description><![CDATA[<p>Was ist denn dann deine Alternative dazu?</p>
<p>Eigentlich sollte m.E. so eine Klasse (bzw. Struktur) immutable sein - dann kann man jedoch den operator&lt;&lt;() nicht benutzen, sondern müsste eine Funktion</p>
<pre><code class="language-cpp">fraction read(std::istream &amp;istr)
</code></pre>
<p>o.ä. erzeugen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410408</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410408</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Fri, 25 Jul 2014 07:41:13 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 07:53:51 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<blockquote>
<p>Sollte der operator&gt;&gt; nicht besser friend der Klasse fraction sein (um dann direkt die Member zu setzen)?</p>
</blockquote>
<p><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="🤡"
    /> <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="🤡"
    /> <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="😮"
    /> Warum denn das? <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="🤡"
    /> <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>
</blockquote>
<p>Um die Attribute privat zu halten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410410</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410410</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 25 Jul 2014 07:53:51 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 08:37:28 GMT]]></title><description><![CDATA[<p>Das war nicht sarkastisch gemeint. Ich dachte Th69 will total ueberfluessigerweise einen <code>friend</code> draus machen.</p>
<p>Ich wusste ja nicht dass ihr die Struktur nach aussen hin immutable machen wollt - das halte ich naemlich nicht fuer sinnvoll. Warum?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410415</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410415</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Fri, 25 Jul 2014 08:37:28 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 09:09:45 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<p>Ich wusste ja nicht dass ihr die Struktur nach aussen hin immutable machen wollt - das halte ich naemlich nicht fuer sinnvoll. Warum?</p>
</blockquote>
<p>Naja, ein Setter dürfte es schon sein, getrennt vom Getter. Solange kein Bedarf an sowas ist, mache ich nicht auf. Und siehe da, in 4 Wochen gibt's immernoch keinen Setter. Irgendwann kommt man daher und kürzt die Brüche oder erzwingt, daß demom!=0 oder gar positiv. Das halte ich mir einfach offen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410424</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410424</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 25 Jul 2014 09:09:45 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 09:16:49 GMT]]></title><description><![CDATA[<p>@Arcoth: du hast trotzdem noch nicht meine Frage beantwortet - was ist deine Alternative zum friend (ohne Setter)?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410425</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410425</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Fri, 25 Jul 2014 09:16:49 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 09:28:57 GMT]]></title><description><![CDATA[<blockquote>
<p>(sowie gleiches bei denom()) finde ich doch arg unsauber (dann kann man gleich public Member nehmen). Sollte der operator&gt;&gt; nicht besser friend der Klasse fraction sein (um dann direkt die Member zu setzen)?</p>
</blockquote>
<p>Wo steht da auch nur ansatzweise irgendwas von Immutability? Du hast nur darauf hingewiesen dass man lieber <code>public</code> Member anstelle von derartigen Funktionen nehmen kann. Solange man die Member von außen direkt verändern kann braucht man kein friend.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410426</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410426</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Fri, 25 Jul 2014 09:28:57 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 09:31:58 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>Arcoth schrieb:</p>
<blockquote>
<p>Ich wusste ja nicht dass ihr die Struktur nach aussen hin immutable machen wollt - das halte ich naemlich nicht fuer sinnvoll. Warum?</p>
</blockquote>
<p>Naja, ein Setter dürfte es schon sein, getrennt vom Getter. Solange kein Bedarf an sowas ist, mache ich nicht auf. Und siehe da, in 4 Wochen gibt's immernoch keinen Setter. Irgendwann kommt man daher und kürzt die Brüche oder erzwingt, daß demom!=0 oder gar positiv. Das halte ich mir einfach offen.</p>
</blockquote>
<p>Man sollte aber schon wissen, ob man Brüche oder rationale Zahlen implementieren will...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410427</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410427</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Fri, 25 Jul 2014 09:31:58 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 09:32:58 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<blockquote>
<p>(sowie gleiches bei denom()) finde ich doch arg unsauber (dann kann man gleich public Member nehmen). Sollte der operator&gt;&gt; nicht besser friend der Klasse fraction sein (um dann direkt die Member zu setzen)?</p>
</blockquote>
<p>Wo steht da auch nur ansatzweise irgendwas von Immutability? Du hast nur darauf hingewiesen dass man lieber <code>public</code> Member anstelle von derartigen Funktionen nehmen kann. Solange man die Member von außen direkt verändern kann braucht man kein friend.</p>
</blockquote>
<p>&quot;(dann kann man gleich public Member nehmen)&quot; war wie &quot;(dann kann man sich auch gleich erschießen)&quot;. Das war doch keine Handlungsempfehlung! Trink erstmal nen Kaffee, ist noch sehr früh am Tag. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2410428</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410428</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 25 Jul 2014 09:32:58 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 09:46:55 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<p>volki schrieb:</p>
<blockquote>
<p>Naja, ein Setter dürfte es schon sein, getrennt vom Getter. Solange kein Bedarf an sowas ist, mache ich nicht auf. Und siehe da, in 4 Wochen gibt's immernoch keinen Setter. Irgendwann kommt man daher und kürzt die Brüche oder erzwingt, daß demom!=0 oder gar positiv. Das halte ich mir einfach offen.</p>
</blockquote>
<p>Man sollte aber schon wissen, ob man Brüche oder rationale Zahlen implementieren will...</p>
</blockquote>
<p>Ach, das halte ich mir vielleicht am besten auch noch offen. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2410430</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410430</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 25 Jul 2014 09:46:55 GMT</pubDate></item><item><title><![CDATA[Reply to op&amp;gt;&amp;gt; + op&amp;lt;&amp;lt; + stream on Fri, 25 Jul 2014 10:47:46 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/106">@Volkard</a>: genau so war es gemeint - irgendwie kommt mein Sarkasmus wohl nicht immer an!?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2410439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2410439</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Fri, 25 Jul 2014 10:47:46 GMT</pubDate></item></channel></rss>