<?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[Logging]]></title><description><![CDATA[<p>Hallo.<br />
ich will ein kleines LoggingProgramm schreiben welches im Fehlerfall die Fehlermeldung sowohl in eine Datei als auch auf dem Bildschirm ausgibt.</p>
<pre><code>class cErrorLogStream : public cLogStream
    {
        public:
            cErrorLogStream(std::ofstream *fOStream);
            std::ostream&amp; operator&lt;&lt;(const std::string &amp;fString);

                protected:
            std::ofstream     * m_stream;
    };
</code></pre>
<pre><code>cErrorLogStream::cErrorLogStream(std::ofstream *fOStream)
    {
            m_stream = fOStream;

    }

    std::ostream&amp; cErrorLogStream::operator&lt;&lt;(const std::string &amp;fString)
    {
        std::cout &lt;&lt; fString &lt;&lt; std::flush;

        if (!m_stream)
        {
            std::cout &lt;&lt; &quot;Error: cErrorLogStream --&gt; m_stream==NULL\n&quot; &lt;&lt; std::flush;
        }

        return *m_stream &lt;&lt; fString &lt;&lt; std::flush;
    }
</code></pre>
<pre><code>std::ofstream* getFileStream(std::string fFileName)
    {
         return new std::ofstream(fFileName.c_str(), std::ios_base::app);
    }
</code></pre>
<pre><code>#define myErrOut         mErrorStream &lt;&lt; &quot;*** Error ***&quot; &lt;&lt; std::endl    &lt;&lt; &quot;10:00:39&quot; &lt;&lt; &quot; |&quot; &lt;&lt; std::setw(30) &lt;&lt;  __FUNCTION__ &lt;&lt; &quot; | &quot;

std::ofstream *aStream=nLog::getFileStream(&quot;holgers.log&quot;);
nLog::cErrorLogStream mErrorStream(aStream);
myErrOut  &lt;&lt; &quot;Holgers Error Test 2\n&quot; &lt;&lt; std::flush;
delete aStream
</code></pre>
<p>In der Datei &quot;holger.log&quot; erscheint nun der erwartete text</p>
<blockquote>
<p>*** Error ***<br />
10:00:39 | main | Holgers Error Test 2</p>
</blockquote>
<p>aber per std:cout erscheint nur</p>
<blockquote>
<p>*** Error ***</p>
</blockquote>
<p>=========================================================</p>
<p>1.) wieso kommt es bei std:cout nicht vollständig raus? wird da irgendwie Vererbungstechnisch falsch abgebogen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/276009/logging</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 11:47:22 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/276009.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 25 Oct 2010 11:41:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 11:41:07 GMT]]></title><description><![CDATA[<p>Hallo.<br />
ich will ein kleines LoggingProgramm schreiben welches im Fehlerfall die Fehlermeldung sowohl in eine Datei als auch auf dem Bildschirm ausgibt.</p>
<pre><code>class cErrorLogStream : public cLogStream
    {
        public:
            cErrorLogStream(std::ofstream *fOStream);
            std::ostream&amp; operator&lt;&lt;(const std::string &amp;fString);

                protected:
            std::ofstream     * m_stream;
    };
</code></pre>
<pre><code>cErrorLogStream::cErrorLogStream(std::ofstream *fOStream)
    {
            m_stream = fOStream;

    }

    std::ostream&amp; cErrorLogStream::operator&lt;&lt;(const std::string &amp;fString)
    {
        std::cout &lt;&lt; fString &lt;&lt; std::flush;

        if (!m_stream)
        {
            std::cout &lt;&lt; &quot;Error: cErrorLogStream --&gt; m_stream==NULL\n&quot; &lt;&lt; std::flush;
        }

        return *m_stream &lt;&lt; fString &lt;&lt; std::flush;
    }
</code></pre>
<pre><code>std::ofstream* getFileStream(std::string fFileName)
    {
         return new std::ofstream(fFileName.c_str(), std::ios_base::app);
    }
</code></pre>
<pre><code>#define myErrOut         mErrorStream &lt;&lt; &quot;*** Error ***&quot; &lt;&lt; std::endl    &lt;&lt; &quot;10:00:39&quot; &lt;&lt; &quot; |&quot; &lt;&lt; std::setw(30) &lt;&lt;  __FUNCTION__ &lt;&lt; &quot; | &quot;

std::ofstream *aStream=nLog::getFileStream(&quot;holgers.log&quot;);
nLog::cErrorLogStream mErrorStream(aStream);
myErrOut  &lt;&lt; &quot;Holgers Error Test 2\n&quot; &lt;&lt; std::flush;
delete aStream
</code></pre>
<p>In der Datei &quot;holger.log&quot; erscheint nun der erwartete text</p>
<blockquote>
<p>*** Error ***<br />
10:00:39 | main | Holgers Error Test 2</p>
</blockquote>
<p>aber per std:cout erscheint nur</p>
<blockquote>
<p>*** Error ***</p>
</blockquote>
<p>=========================================================</p>
<p>1.) wieso kommt es bei std:cout nicht vollständig raus? wird da irgendwie Vererbungstechnisch falsch abgebogen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970318</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970318</guid><dc:creator><![CDATA[Heroholger]]></dc:creator><pubDate>Mon, 25 Oct 2010 11:41:07 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 11:44:01 GMT]]></title><description><![CDATA[<p>Copy Paste Fehler</p>
<p>die Klasse cErrorLogStream</p>
<p>erbt nicht von cLogStream !!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970320</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970320</guid><dc:creator><![CDATA[Heroholger]]></dc:creator><pubDate>Mon, 25 Oct 2010 11:44:01 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 12:29:27 GMT]]></title><description><![CDATA[<p>und BTW: Ungarische Notation ist sowas von out...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970334</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970334</guid><dc:creator><![CDATA[gastgast]]></dc:creator><pubDate>Mon, 25 Oct 2010 12:29:27 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 12:42:55 GMT]]></title><description><![CDATA[<p>das hier scheint Probleme zu machen:</p>
<p>stream &lt;&lt; x &lt;&lt; y &lt;&lt; z; == (((stream &lt;&lt; x)-&gt;rückgabe des streams &lt;&lt; y)-&gt;rückgabe des streams &lt;&lt; z);</p>
<p>Such mal in den Beiträgen <a href="http://www.c-plusplus.net/forum/viewtopic-var-p-is-1952714.html#1952714" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-p-is-1952714.html#1952714</a> das könnte weiterhelfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970341</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970341</guid><dc:creator><![CDATA[padreigh]]></dc:creator><pubDate>Mon, 25 Oct 2010 12:42:55 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 13:08:12 GMT]]></title><description><![CDATA[<p>leider ist das nur &quot;anscheinend&quot; mein Problem. Ich will halt nicht pauschal den Cout Stream in die Datei umleiten. Sondern ich will nur manche Sachen die in die Datei gehen auch auf dem Bildschirm per cout sehen.</p>
<p>Ja ich sehe es, mein Quellcode legt die Annahme sehr nahe. Aber ich will auch mal nen cout aufrufen, was nicht in der Datei landet und auch mal umgedreht, was in die Datei schreiben was nicht aufm Bildschirm landet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970352</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970352</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Mon, 25 Oct 2010 13:08:12 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 13:33:37 GMT]]></title><description><![CDATA[<p>Mach dir klar, was die Verkettung der einzelnen operator&lt;&lt; bewirkt, und dann schau, was du in deinem operator&lt;&lt; zurückgibst! Dann wunderst du dich nicht mehr, warum nur der erste cout ankommt, der Rest nur ins file wandert <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /> (padreigh hat es ja schon angedeutet)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970365</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970365</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Mon, 25 Oct 2010 13:33:37 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 13:36:40 GMT]]></title><description><![CDATA[<p>Jup (schon wieder mißverständlich von mir geschrieben)..die Erklärung von meinem Vorgänger ist richtig.</p>
<blockquote>
<p>stream &lt;&lt; x &lt;&lt; y &lt;&lt; z; == (((stream &lt;&lt; x)-&gt;rückgabe des streams &lt;&lt; y)-&gt;rückgabe des streams &lt;&lt; z);</p>
</blockquote>
<p>Ich verstehe schon warum ich da Probleme habe.</p>
<p>ich finde nur keine sinnvolle Lösung für das Problem.</p>
<p>ich versuche gerade ein separates ostream-Objekt zu verwalten in der Klasse. Bisher falle ich da aber immer auf die Fresse.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970368</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970368</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Mon, 25 Oct 2010 13:36:40 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 13:51:05 GMT]]></title><description><![CDATA[<p>du könntest ja mal Versuchen statt eines ostream&amp; einen deiner Streams zurückzugeben ... &lt;prodd&gt; und vielleicht etwas ähnliches mite deinem filestream machen was du mit cout machst ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970370</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970370</guid><dc:creator><![CDATA[padreigh]]></dc:creator><pubDate>Mon, 25 Oct 2010 13:51:05 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 18:04:18 GMT]]></title><description><![CDATA[<p>HeroHolger schrieb:</p>
<blockquote>
<p>Ich verstehe schon warum ich da Probleme habe.</p>
<p>ich finde nur keine sinnvolle Lösung für das Problem.</p>
</blockquote>
<p>Wenn Du das IO von streams verändern möchtest, dann möchtest Du in der Regel eigene Stream-Buffer implementieren.</p>
<p>Folgendes benutzt keine Streambuffer, aber vielleicht findest Du es trotzdem hilfreich:</p>
<p><a href="http://robitzki.de/log.h" rel="nofollow">robitzki.de/log.h</a><br />
<a href="http://robitzki.de/log.cpp" rel="nofollow">robitzki.de/log.cpp</a></p>
<p>mfg Torsten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970550</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970550</guid><dc:creator><![CDATA[Torsten Robitzki]]></dc:creator><pubDate>Mon, 25 Oct 2010 18:04:18 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Mon, 25 Oct 2010 18:20:29 GMT]]></title><description><![CDATA[<p>Ändere mal std::ostream&amp; operator&lt;&lt;(const std::string &amp;fString); zu std::ostream&amp; operator&lt;&lt;(std::ostream&amp; o, const std::string &amp;fString);</p>
<pre><code class="language-cpp">std::ostream&amp; cErrorLogStream::operator&lt;&lt;(std::ostream&amp; o, const std::string &amp;fString)
    {
        std::cout &lt;&lt; fString &lt;&lt; std::flush;

        if (!m_stream)
        {
            std::cout &lt;&lt; &quot;Error: cErrorLogStream --&gt; m_stream==NULL\n&quot; &lt;&lt; std::flush;
        }

        *m_stream &lt;&lt; fString &lt;&lt; std::flush;
        return o;
    }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1970555</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970555</guid><dc:creator><![CDATA[opi&amp;lt;&amp;lt;]]></dc:creator><pubDate>Mon, 25 Oct 2010 18:20:29 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Tue, 26 Oct 2010 07:52:03 GMT]]></title><description><![CDATA[<p>@Opi: das geht leider nicht, es darf nur eine Parameter in der Klammer stehen..zumindest laut meinem Compiler.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970711</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Tue, 26 Oct 2010 07:52:03 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Tue, 26 Oct 2010 08:17:13 GMT]]></title><description><![CDATA[<p>HeroHolger schrieb:</p>
<blockquote>
<p>@Opi: das geht leider nicht, es darf nur eine Parameter in der Klammer stehen..zumindest laut meinem Compiler.</p>
</blockquote>
<p>Diese Variante soll auch als freie Funktion implementiert werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970720</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970720</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Tue, 26 Oct 2010 08:17:13 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Tue, 26 Oct 2010 09:36:47 GMT]]></title><description><![CDATA[<p>Hi.<br />
kannst du mal erklären was du unter einer freien Funktion verstehst?</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970761</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970761</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Tue, 26 Oct 2010 09:36:47 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Tue, 26 Oct 2010 10:06:11 GMT]]></title><description><![CDATA[<p>HeroHolger schrieb:</p>
<blockquote>
<p>Hi.<br />
kannst du mal erklären was du unter einer freien Funktion verstehst?</p>
</blockquote>
<p>Das ist eine Funktion, die nicht Member einer Klasse ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970779</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970779</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Tue, 26 Oct 2010 10:06:11 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Tue, 26 Oct 2010 10:31:15 GMT]]></title><description><![CDATA[<p>Wie soll ich ne Operator Methode ohne zugehörende Klasse programmieren? Das angeführte Beispiel geht dafür nicht.</p>
<p>Ne operator&lt;&lt; - Methode mit 2 Parametern erscheint grundsätzlich sehr fragwürdig. Das kann doch gar nicht gehen. ob nun außerhalb oder innerhalb einer Klasse definiert.</p>
<p>Sei es wie es sei..ich hab es probiert..der Compiler akzeptiert es nicht. Und ich sehe keinen logischen Sinn in so einer Methode.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970797</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970797</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Tue, 26 Oct 2010 10:31:15 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Tue, 26 Oct 2010 11:04:48 GMT]]></title><description><![CDATA[<p>Warum fragwürdig? Das ist es nämlich nicht. Und natürlich geht es.</p>
<p>Zeig doch einfach mal, was du ausprobiert hast und deine Fehlermeldung...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970817</guid><dc:creator><![CDATA[[[global:former_user]]]]></dc:creator><pubDate>Tue, 26 Oct 2010 11:04:48 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Tue, 26 Oct 2010 11:41:05 GMT]]></title><description><![CDATA[<p>HeroHolger schrieb:</p>
<blockquote>
<p>Ne operator&lt;&lt; - Methode mit 2 Parametern erscheint grundsätzlich sehr fragwürdig. Das kann doch gar nicht gehen. ob nun außerhalb oder innerhalb einer Klasse definiert.</p>
</blockquote>
<p>Lies doch bitte mal den Artikel zur Überladung von Operatoren im Magazin<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-232010.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-232010.html</a><br />
Punkt 3.4 ist für dich besonders interessant.<br />
Dazu vielleicht auch noch<br />
<a href="http://www.cplusplus.com/reference/iostream/ostream/operator%3C%3C/" rel="nofollow">http://www.cplusplus.com/reference/iostream/ostream/operator%3C%3C/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970834</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970834</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 26 Oct 2010 11:41:05 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Tue, 26 Oct 2010 12:04:50 GMT]]></title><description><![CDATA[<p>k wußte ich nicht.</p>
<p>Ich hab mir die links mal angeschaut...muss ich mal probieren.</p>
<p>Ich meld mich (vermutlich) morgen nochmal dazu.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1970841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1970841</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Tue, 26 Oct 2010 12:04:50 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Wed, 27 Oct 2010 08:02:53 GMT]]></title><description><![CDATA[<p>Hab mir mal angeschaut was ihr meintet, aber das bringt irgendwie nichts.</p>
<p>Es ist doch anscheinend egal, ob ich den Shift-Operator außerhalb oder innerhalb der Klasse programmiere. Am Ende stehe ich immer noch vor dem Problem, dass ich ihn je nach Situation mal splitten muss oder mal einfach nur in die Datei ausgeben will.</p>
<p>mfg<br />
Holger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1971260</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1971260</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Wed, 27 Oct 2010 08:02:53 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Wed, 27 Oct 2010 08:16:40 GMT]]></title><description><![CDATA[<p>(*sehnsüchtig an WernerSolomon denk*)<br />
Ich glaube, hübsch wird es erst, wenn Du einen eigenen streambuf schreibst, der zwei andere streambufs besitzt und alle Ausgaben auf beide aufsplittet und Du einen ostream draufsetzt.<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-p-is-1403536.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-p-is-1403536.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1971264</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1971264</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Wed, 27 Oct 2010 08:16:40 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Wed, 27 Oct 2010 09:18:14 GMT]]></title><description><![CDATA[<p>genau das will ich aber nicht, weil diese Sache (std::cout automatisch in die Weiche schieben) programmweit gültig wäre und nicht nur lokal.</p>
<p>Pauschales Streamsplitting ist eben nicht das was ich will.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1971304</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1971304</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Wed, 27 Oct 2010 09:18:14 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Wed, 27 Oct 2010 10:10:46 GMT]]></title><description><![CDATA[<p>Dann willst du temporäres Streamsplitting?<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-p-is-842769.html#842769" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-p-is-842769.html#842769</a></p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/106">@volkard</a>,<br />
Die Forumsuche kann Werner Salomon heraufbeschwören <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1971326</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1971326</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 27 Oct 2010 10:10:46 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Wed, 27 Oct 2010 11:22:25 GMT]]></title><description><![CDATA[<p>nein, ich will kein temporäres...ich möchte konkretes splitten..also nur wenn ich es brauche</p>
<pre><code>log &lt;&lt; &quot;ich schreibe in cout&quot;
errlog &lt;&lt; &quot;ich schreibe in Datei und cout&quot;;
log &lt;&lt; &quot;ich schreibe in cout&quot;
errlog &lt;&lt; &quot;ich schreibe in Datei und cout&quot;;
</code></pre>
<p>Das muss über zig Bibliotheken und u.U. auch threadsicher funktionieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1971367</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1971367</guid><dc:creator><![CDATA[HeroHolger]]></dc:creator><pubDate>Wed, 27 Oct 2010 11:22:25 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Wed, 27 Oct 2010 12:00:05 GMT]]></title><description><![CDATA[<p>Dann verwende die von volkard genannte Weiche auf dein <code>errlog</code> und nicht auf <code>std::cout</code> . Ist dir übrigens bewusst, dass es ein <code>std::cerr</code> gibt?</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1971397</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1971397</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 27 Oct 2010 12:00:05 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Wed, 27 Oct 2010 14:17:54 GMT]]></title><description><![CDATA[<p>Warum nicht gleich boost::log?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1971496</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1971496</guid><dc:creator><![CDATA[boost?]]></dc:creator><pubDate>Wed, 27 Oct 2010 14:17:54 GMT</pubDate></item><item><title><![CDATA[Reply to Logging on Wed, 27 Oct 2010 15:43:07 GMT]]></title><description><![CDATA[<p>Die WS Streamweiche hat er schon in Post 4 angeboten bekommen (und abgelehnt) <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/1971559</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1971559</guid><dc:creator><![CDATA[padreigh]]></dc:creator><pubDate>Wed, 27 Oct 2010 15:43:07 GMT</pubDate></item></channel></rss>