<?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[Eigenen Stream mainipulator schreiben]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich benutze einen stream um aus einem Text einen Wert zu bekommen.<br />
Bei einem boolschen Wert kann ich z.B. schreiben.</p>
<pre><code class="language-cpp">cout &lt;&lt; boolalpha &lt;&lt; true;
</code></pre>
<p>Hier wird tatsächlich &quot;true&quot; ausgegeben.</p>
<p>Wie kann ich einen Streammanipulator schreiben, der mir &quot;yes&quot; bzw. &quot;no&quot; ausgibt?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/171203/eigenen-stream-mainipulator-schreiben</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 08:12:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/171203.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 23 Jan 2007 13:33:10 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eigenen Stream mainipulator schreiben on Tue, 23 Jan 2007 13:33:10 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich benutze einen stream um aus einem Text einen Wert zu bekommen.<br />
Bei einem boolschen Wert kann ich z.B. schreiben.</p>
<pre><code class="language-cpp">cout &lt;&lt; boolalpha &lt;&lt; true;
</code></pre>
<p>Hier wird tatsächlich &quot;true&quot; ausgegeben.</p>
<p>Wie kann ich einen Streammanipulator schreiben, der mir &quot;yes&quot; bzw. &quot;no&quot; ausgibt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215217</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215217</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Tue, 23 Jan 2007 13:33:10 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen Stream mainipulator schreiben on Tue, 23 Jan 2007 13:36:47 GMT]]></title><description><![CDATA[<p>Das wird schwierig. Da wäre es wohl am besten, das Locale des Streams anzupassen (ich müsste mal zu Hause nachsehen, welche Facette du benötigst) und die Bezeichner für true und false in &quot;yes&quot; bzw. &quot;no&quot; zu ändern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215224</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 23 Jan 2007 13:36:47 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen Stream mainipulator schreiben on Tue, 23 Jan 2007 13:47:12 GMT]]></title><description><![CDATA[<p>Den Zusammenhang hab ich bisher gar nicht gesehen.<br />
Nur mal so aus Neugierde warum ist das schwierig?</p>
<p>Kann es sein, dass dieser manipulator eigentlich nur ein Flag im Stream setzt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215235</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215235</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Tue, 23 Jan 2007 13:47:12 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen Stream mainipulator schreiben on Tue, 23 Jan 2007 13:53:43 GMT]]></title><description><![CDATA[<p>Genau: Der Manipulator setzt nur ein Flag im Stream und der operator&lt;&lt; wertet dieses Flag dann aus, um zu entscheiden, wie er seine Werte darstellen soll. Das Problem dabei ist, daß du den ostream::operator&lt;&lt;(bool) ersetzen müsstest, um dieses Verhalten anzupassen - und an den kommst du nicht ran.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215240</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215240</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 23 Jan 2007 13:53:43 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen Stream mainipulator schreiben on Tue, 23 Jan 2007 13:57:35 GMT]]></title><description><![CDATA[<p>Habe mal auf blöd rumgesucht und dabei die Klasse std::__Locinfo gefunden. in der gibts eine Funktion:</p>
<pre><code class="language-cpp">const char *__CLR_OR_THIS_CALL _Getfalse() const
{	// return false name (no C source)
	return (&quot;false&quot;);
}
</code></pre>
<p>Arbeite mit VS2005.<br />
Weiß jemand ein gutes Tutorial/Nachschlagewerk für den Themenbereich locale, facet, collate ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215245</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215245</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Tue, 23 Jan 2007 13:57:35 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen Stream mainipulator schreiben on Tue, 23 Jan 2007 14:09:16 GMT]]></title><description><![CDATA[<p>templäd schrieb:</p>
<blockquote>
<p>Wie kann ich einen Streammanipulator schreiben, der mir &quot;yes&quot; bzw. &quot;no&quot; ausgibt?</p>
</blockquote>
<p>Das wird über die Facette numpunct geregelt. Dort sind die protected Methoden do_truename und do_falsename zu überladen. Zum Beispiel so:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;locale&gt;

struct MyNumpunct : public std::numpunct&lt; char &gt;
{
protected:
    virtual string_type do_truename() const
    {
        return &quot;yes&quot;;
    }
    virtual string_type do_falsename() const
    {
        return &quot;no&quot;;
    }
};

int main()
{
    using namespace std;
    cout.imbue( locale( cout.getloc(), new MyNumpunct ) );
    cout &lt;&lt; boolalpha; // damit der Text komt
    cout &lt;&lt; &quot;Fuer 'true' : &quot; &lt;&lt; true &lt;&lt; endl;
    cout &lt;&lt; &quot;Fuer 'false': &quot; &lt;&lt; false &lt;&lt; endl;
    return 0;
}
</code></pre>
<p>templäd schrieb:</p>
<blockquote>
<p>Habe mal auf blöd rumgesucht und dabei die Klasse std::__Locinfo gefunden. in der gibts eine Funktion:</p>
<pre><code class="language-cpp">const char *__CLR_OR_THIS_CALL _Getfalse() const
{	// return false name (no C source)
	return (&quot;false&quot;);
}
</code></pre>
</blockquote>
<p>... das ist implementierungsabhängig.</p>
<p>templäd schrieb:</p>
<blockquote>
<p>Weiß jemand ein gutes Tutorial/Nachschlagewerk für den Themenbereich locale, facet, collate ?</p>
</blockquote>
<p>Das hier: &lt;<a href="http://www.amazon.com/Standard-C%2B%2B-IOStreams-Locales-Programmers/dp/0201183951/sr=8-1/qid=1169561218/ref=sr_1_1/103-8756692-7022206?ie=UTF8&amp;s=books" rel="nofollow">Standard C++ IOStreams and Locales</a>&gt;</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1215252</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1215252</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Tue, 23 Jan 2007 14:09:16 GMT</pubDate></item></channel></rss>