<?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[Überladen von Funktionen aus math.h in einer Klasse]]></title><description><![CDATA[<p>Folgender code gibt erzeugt mir ein Problem das ich nicht lösen kann<br />
(math.h ist inkludiert)<br />
base und error sind public doubles in der klasse calc</p>
<pre><code>calc calc::log(const calc&amp; x) 
{
	calc temp;
	temp.error = 1/x.base*x.error;
	temp.base = log(x.base);
	return temp;
}
</code></pre>
<p>In member function 'calc calc::log(const calc&amp;)':<br />
error: no matching function for call to 'calc::log(const double&amp;)'<br />
temp.base = log(x.base);</p>
<p>note candidate is:<br />
note: calc calc::log(const calc&amp;)<br />
calc calc::log(const calc&amp; x)</p>
<p>note: no known conversion for argument 1 from 'const double' to 'const calc&amp;'</p>
<p>Ich habe keine ahnung warum der compiler mir hier nen fehler wirft<br />
alle ideen oder lösungsvorschläge sind sehr wilkommen <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="🙂"
    /><br />
Ich hoffe nur ich habe hier keinen blöden fehler gemacht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/331248/überladen-von-funktionen-aus-math-h-in-einer-klasse</link><generator>RSS for Node</generator><lastBuildDate>Fri, 01 May 2026 19:16:18 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/331248.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 18 Feb 2015 15:29:08 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Überladen von Funktionen aus math.h in einer Klasse on Wed, 18 Feb 2015 15:29:08 GMT]]></title><description><![CDATA[<p>Folgender code gibt erzeugt mir ein Problem das ich nicht lösen kann<br />
(math.h ist inkludiert)<br />
base und error sind public doubles in der klasse calc</p>
<pre><code>calc calc::log(const calc&amp; x) 
{
	calc temp;
	temp.error = 1/x.base*x.error;
	temp.base = log(x.base);
	return temp;
}
</code></pre>
<p>In member function 'calc calc::log(const calc&amp;)':<br />
error: no matching function for call to 'calc::log(const double&amp;)'<br />
temp.base = log(x.base);</p>
<p>note candidate is:<br />
note: calc calc::log(const calc&amp;)<br />
calc calc::log(const calc&amp; x)</p>
<p>note: no known conversion for argument 1 from 'const double' to 'const calc&amp;'</p>
<p>Ich habe keine ahnung warum der compiler mir hier nen fehler wirft<br />
alle ideen oder lösungsvorschläge sind sehr wilkommen <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="🙂"
    /><br />
Ich hoffe nur ich habe hier keinen blöden fehler gemacht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2443291</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2443291</guid><dc:creator><![CDATA[l2iisk]]></dc:creator><pubDate>Wed, 18 Feb 2015 15:29:08 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von Funktionen aus math.h in einer Klasse on Wed, 18 Feb 2015 15:40:14 GMT]]></title><description><![CDATA[<p>Das Problem ist, das <code>calc::log()</code> vor <code>std::log()</code> aus <code>&lt;cmath&gt;</code> gefunden wird, wenn der Compiler versucht <code>log()</code> aufzulösen.<br />
Schreib <code>std::log(x.base)</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2443293</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2443293</guid><dc:creator><![CDATA[Furble Wurble]]></dc:creator><pubDate>Wed, 18 Feb 2015 15:40:14 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von Funktionen aus math.h in einer Klasse on Wed, 18 Feb 2015 15:43:31 GMT]]></title><description><![CDATA[<p>Furble Wurble schrieb:</p>
<blockquote>
<p>Das Problem ist, das <code>calc::log()</code> vor <code>std::log()</code> aus <code>&lt;cmath&gt;</code> gefunden wird, wenn der Compiler versucht <code>log()</code> aufzulösen.<br />
Schreib <code>std::log(x.base)</code> .</p>
</blockquote>
<p>Wenn du math.h so eingebunden hast:</p>
<pre><code>#include &lt;cmath&gt;
</code></pre>
<p>Bei</p>
<pre><code>#include &lt;math.h&gt;
</code></pre>
<p>solltest du nur ::, nicht std:: voransetzen. Danach solltest du dich eines besseren besinnen, und cmath statt math.h einbinden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2443296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2443296</guid><dc:creator><![CDATA[Hyde++ 0]]></dc:creator><pubDate>Wed, 18 Feb 2015 15:43:31 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von Funktionen aus math.h in einer Klasse on Wed, 18 Feb 2015 15:44:28 GMT]]></title><description><![CDATA[<p>Ahh, vielen Dank für die schnelle Hilfe :))</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2443297</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2443297</guid><dc:creator><![CDATA[l2iisk]]></dc:creator><pubDate>Wed, 18 Feb 2015 15:44:28 GMT</pubDate></item><item><title><![CDATA[Reply to Überladen von Funktionen aus math.h in einer Klasse on Wed, 18 Feb 2015 15:46:57 GMT]]></title><description><![CDATA[<p>Hilft bei sowas nicht ADl, d.h. dass man das so schreibt:</p>
<pre><code>calc calc::log(const calc&amp; x)
{
    using std::log;
    // oder sogar using namespace std;

    calc temp;
    temp.error = 1/x.base*x.error;
    temp.base = log(x.base);
    return temp;
}
</code></pre>
<p>?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2443298</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2443298</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Wed, 18 Feb 2015 15:46:57 GMT</pubDate></item></channel></rss>