<?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[ofstream und tie Problem.]]></title><description><![CDATA[<p>Ich benutze boost::test und lenke meine Testausgabe in eine Textdatei. Der Nachteil dabei ist, dass die Ausgaben während des testens (sind keine automatischen) nicht in der Konsole zu sehen sind.<br />
Meine Idee war folgende: Ich öffne einen ofstream und mache ein tie(&amp;std::cout) dran:</p>
<pre><code>struct OutputRedirect
{
   OutputRedirect()
   {

      test_log.open((std::string(&quot;unit_test &quot;)+&quot;.log&quot;).c_str());

      // Tie std::cout to that stream to generate also log output in the console
      test_log.tie(&amp;std::cout);

      boost::unit_test::unit_test_log.set_stream( test_log );
   }
   std::ofstream test_log;
};
</code></pre>
<p>Das ist der Ausschnitt. Wenn ich das Ganze laufen lassen, so wird die log datei generiert und befüllt, aber in std::cout kommt nichts an.</p>
<p>Ist das tie so falsch verwendet worden? Oder was übersehe ich da?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/262712/ofstream-und-tie-problem</link><generator>RSS for Node</generator><lastBuildDate>Sun, 06 Sep 2026 15:08:23 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/262712.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 10 Mar 2010 11:25:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to ofstream und tie Problem. on Wed, 10 Mar 2010 11:25:20 GMT]]></title><description><![CDATA[<p>Ich benutze boost::test und lenke meine Testausgabe in eine Textdatei. Der Nachteil dabei ist, dass die Ausgaben während des testens (sind keine automatischen) nicht in der Konsole zu sehen sind.<br />
Meine Idee war folgende: Ich öffne einen ofstream und mache ein tie(&amp;std::cout) dran:</p>
<pre><code>struct OutputRedirect
{
   OutputRedirect()
   {

      test_log.open((std::string(&quot;unit_test &quot;)+&quot;.log&quot;).c_str());

      // Tie std::cout to that stream to generate also log output in the console
      test_log.tie(&amp;std::cout);

      boost::unit_test::unit_test_log.set_stream( test_log );
   }
   std::ofstream test_log;
};
</code></pre>
<p>Das ist der Ausschnitt. Wenn ich das Ganze laufen lassen, so wird die log datei generiert und befüllt, aber in std::cout kommt nichts an.</p>
<p>Ist das tie so falsch verwendet worden? Oder was übersehe ich da?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1866930</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1866930</guid><dc:creator><![CDATA[Seikilos]]></dc:creator><pubDate>Wed, 10 Mar 2010 11:25:20 GMT</pubDate></item><item><title><![CDATA[Reply to ofstream und tie Problem. on Wed, 10 Mar 2010 11:34:15 GMT]]></title><description><![CDATA[<p>Da scheint ein Missverständnis vorzuliegen, was tie() so macht. Mit tie() wird i.A. ein Ausgabestream mit einem Eingabestream 'verbunden' und zwar derart, dass der Ausgabestream 'geflushed' wird, bevor der Eingabestream mit dem Lesen anfängt. Das dient dazu, dass bei Konstrukten dieser Art:</p>
<pre><code class="language-cpp">cout &lt;&lt; &quot;Ihre Eingabe bitte: &quot;;
    cin &gt;&gt; input_wert;
</code></pre>
<p>.. der Text 'Ihre Eingabe bitte: ' auch wirklich auf der Konsole erscheint, bevor der Input arbeitet.</p>
<p>Falls Du Ausgaben in mehr als ein Device (Datei, Konsole) gleichzeitig machen willst, so hilft Dir dieser <a href="http://www.c-plusplus.net/forum/viewtopic-var-p-is-842769.html#842769" rel="nofollow">Thread über eine Ausgabe-Weiche</a> weiter.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1866934</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1866934</guid><dc:creator><![CDATA[Werner_logoff]]></dc:creator><pubDate>Wed, 10 Mar 2010 11:34:15 GMT</pubDate></item><item><title><![CDATA[Reply to ofstream und tie Problem. on Wed, 10 Mar 2010 11:47:08 GMT]]></title><description><![CDATA[<p>Hallo,<br />
dann muss tie mir irgendwie falsch im Hinterkopf hängen geblieben sein.<br />
Ich schaue mir mal die Weiche an. Bei mir ist es ja andersrum, ich muss an ofstream eine Weiche hängen, weil einige Ausgaben von der getesteten Lib sollen nicht in die log datei wandern.</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1866942</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1866942</guid><dc:creator><![CDATA[Seikilos]]></dc:creator><pubDate>Wed, 10 Mar 2010 11:47:08 GMT</pubDate></item></channel></rss>