<?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[rdbuf(): Fehlermeldung &amp;quot;keine passende Funktion für Aufruf ...&amp;quot;]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte in meinem Programm die Einträge in ein Log-File in die cerr umleiten, falls es Probleme mit dem Log-File gibt. Dazu folgender Code:</p>
<p>In der Header-Datei:</p>
<p>std::ofstream m_logfile;</p>
<p>In der Quelltext-Datei:</p>
<p># include &lt;Header-Datei&gt;<br />
# include &lt;iostream&gt;<br />
# include &lt;fstream&gt;</p>
<p>…</p>
<p>using namespace std;</p>
<p>//*************************************************************************<br />
int ClassName::Funktion()<br />
{<br />
…<br />
if …<br />
m_logfile.rdbuf(cerr.rdbuf());<br />
…<br />
}</p>
<p>Beim Kompilieren erhalte ich folgende Fehlermeldung:</p>
<p>Fehler: keine passende Funktion für Aufruf von »std::basic_ofstream&lt;char, std::char_traits&lt;char&gt; &gt;::rdbuf(std::streambuf*&amp;)«<br />
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/fstream:596: Anmerkung: Kandidaten sind: std::basic_filebuf&lt;_CharT, _Traits&gt;* std::basic_ofstream&lt;_CharT, _Traits&gt;::rdbuf() const [with _CharT = char, _Traits = std::char_traits&lt;char&gt;]</p>
<p>Der Compileraufruf lautet:</p>
<p>g++ -g -O -Wall -c -o File.o File.cpp</p>
<p>Würde mich über einen Tipp sehr freuen.</p>
<p>Vielen Dank</p>
<p>Uli</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/208681/rdbuf-fehlermeldung-quot-keine-passende-funktion-für-aufruf-quot</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 01:56:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/208681.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 21 Mar 2008 10:25:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to rdbuf(): Fehlermeldung &amp;quot;keine passende Funktion für Aufruf ...&amp;quot; on Fri, 21 Mar 2008 10:25:15 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte in meinem Programm die Einträge in ein Log-File in die cerr umleiten, falls es Probleme mit dem Log-File gibt. Dazu folgender Code:</p>
<p>In der Header-Datei:</p>
<p>std::ofstream m_logfile;</p>
<p>In der Quelltext-Datei:</p>
<p># include &lt;Header-Datei&gt;<br />
# include &lt;iostream&gt;<br />
# include &lt;fstream&gt;</p>
<p>…</p>
<p>using namespace std;</p>
<p>//*************************************************************************<br />
int ClassName::Funktion()<br />
{<br />
…<br />
if …<br />
m_logfile.rdbuf(cerr.rdbuf());<br />
…<br />
}</p>
<p>Beim Kompilieren erhalte ich folgende Fehlermeldung:</p>
<p>Fehler: keine passende Funktion für Aufruf von »std::basic_ofstream&lt;char, std::char_traits&lt;char&gt; &gt;::rdbuf(std::streambuf*&amp;)«<br />
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/fstream:596: Anmerkung: Kandidaten sind: std::basic_filebuf&lt;_CharT, _Traits&gt;* std::basic_ofstream&lt;_CharT, _Traits&gt;::rdbuf() const [with _CharT = char, _Traits = std::char_traits&lt;char&gt;]</p>
<p>Der Compileraufruf lautet:</p>
<p>g++ -g -O -Wall -c -o File.o File.cpp</p>
<p>Würde mich über einen Tipp sehr freuen.</p>
<p>Vielen Dank</p>
<p>Uli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1478210</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1478210</guid><dc:creator><![CDATA[Hohe-Berge]]></dc:creator><pubDate>Fri, 21 Mar 2008 10:25:15 GMT</pubDate></item><item><title><![CDATA[Reply to rdbuf(): Fehlermeldung &amp;quot;keine passende Funktion für Aufruf ...&amp;quot; on Fri, 21 Mar 2008 13:19:22 GMT]]></title><description><![CDATA[<p>Zwar ist aus deinem Quelltext nicht ganz ersichtlich, was du damit erreichen willst, aber du hast schlicht und einfach rdbuf() mit den falschen Argumenten aufgerufen. Das sagt dir doch auch schon die Fehlermeldung: du hast einen streambuf übergeben, obwohl rdbuf keine Argumente erwartet.</p>
<p><a href="http://www.cplusplus.com/reference/iostream/ofstream/rdbuf.html" rel="nofollow">http://www.cplusplus.com/reference/iostream/ofstream/rdbuf.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1478310</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1478310</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 21 Mar 2008 13:19:22 GMT</pubDate></item><item><title><![CDATA[Reply to rdbuf(): Fehlermeldung &amp;quot;keine passende Funktion für Aufruf ...&amp;quot; on Fri, 21 Mar 2008 13:48:40 GMT]]></title><description><![CDATA[<p>Hallo pumuckl,</p>
<p>vielen Dank für deine Antwort.</p>
<p>Ich kann sie nachvollziehen. Leider wird mir dadurch noch nicht klar wird, wie ich weiterkomme.</p>
<p>Im Grundsatz möchte ich das Gegenteil der vielen Beispiele (cout in eine Datei umlenken, z.B. <a href="http://www.cplusplus.com/reference/iostream/ios/rdbuf.html" rel="nofollow">http://www.cplusplus.com/reference/iostream/ios/rdbuf.html</a>) machen, nämlich die Ausgabe in eine Datei nach cerr umlenken - beispielsweise bei einem Problem mit der Datei (Zugriffsproblem, ...). Natürlich möglichst elegant, d.h. ohne an mehreren Stellen die Alternativausgabe für cerr zu programmieren.</p>
<p>Hättest du da evtl. einen Vorschlag.</p>
<p>Viele Grüße</p>
<p>Uli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1478321</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1478321</guid><dc:creator><![CDATA[Hohe-Berge]]></dc:creator><pubDate>Fri, 21 Mar 2008 13:48:40 GMT</pubDate></item><item><title><![CDATA[Reply to rdbuf(): Fehlermeldung &amp;quot;keine passende Funktion für Aufruf ...&amp;quot; on Sat, 22 Mar 2008 11:58:02 GMT]]></title><description><![CDATA[<p>Schreib mal deine Zuweisung in 2 Zeilen (wie auch im Referenz-Beispiel angegeben) und poste danach noch mal die (ganze) Fehlermeldung...</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9960">@pumuckl</a>: rdbuf(streambuf <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="😉"
    /> gibt es auch (zum Setzen des Streampuffers)...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1478672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1478672</guid><dc:creator><![CDATA[~stream]]></dc:creator><pubDate>Sat, 22 Mar 2008 11:58:02 GMT</pubDate></item><item><title><![CDATA[Reply to rdbuf(): Fehlermeldung &amp;quot;keine passende Funktion für Aufruf ...&amp;quot; on Sat, 22 Mar 2008 19:19:54 GMT]]></title><description><![CDATA[<p>~stream schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9960">@pumuckl</a>: rdbuf(streambuf <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="😉"
    /> gibt es auch (zum Setzen des Streampuffers)...</p>
</blockquote>
<p>Wenn ich das richtig sehe, dann ist das rdbuf() von ios geerbt, allerdings durch rdbuf() von ofstream verdeckt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1478890</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1478890</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Sat, 22 Mar 2008 19:19:54 GMT</pubDate></item><item><title><![CDATA[Reply to rdbuf(): Fehlermeldung &amp;quot;keine passende Funktion für Aufruf ...&amp;quot; on Sun, 23 Mar 2008 10:07:37 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9960">@pumuckl</a>: Du hast recht, die Funktion wird überdeckt (und nicht mittels using freigegeben).</p>
<p>Aber dann kann man sie trotzdem noch aufrufen:</p>
<pre><code class="language-cpp">m_logfile.std::ios::rdbuf(std::cerr.rdbuf()); // beachte: std::ios:: !!!
</code></pre>
<p>Folgendes Testprogramm hat bei meinem BCB5-Compiler geklappt:</p>
<pre><code class="language-cpp">m_logfile.open(&quot;test.txt&quot;);
m_logfile &lt;&lt; &quot;hello&quot; &lt;&lt; std::endl; // output to logfile
m_logfile.std::ios::rdbuf(std::cerr.rdbuf());
m_logfile &lt;&lt; &quot;error&quot; &lt;&lt; std::endl; // output to cerr (console)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1479037</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479037</guid><dc:creator><![CDATA[~stream]]></dc:creator><pubDate>Sun, 23 Mar 2008 10:07:37 GMT</pubDate></item><item><title><![CDATA[Reply to rdbuf(): Fehlermeldung &amp;quot;keine passende Funktion für Aufruf ...&amp;quot; on Sun, 23 Mar 2008 15:50:57 GMT]]></title><description><![CDATA[<p>Vielen Dank für euere Hilfe - funktioniert.</p>
<p>Viele Grüße</p>
<p>Uli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1479180</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479180</guid><dc:creator><![CDATA[Hohe-Berge]]></dc:creator><pubDate>Sun, 23 Mar 2008 15:50:57 GMT</pubDate></item></channel></rss>