<?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[Default Argumente in Klassen und Namespaces]]></title><description><![CDATA[<p>Also ich habe zum Einen hier einen Auszug aus einer Klasse:<br />
KJLog.hpp</p>
<pre><code class="language-cpp">...
class kjLog
{
      public:
            void     SetString(string cSet_string_name,string cValue,kjReturn &amp;Error=kjReturn());
            void     SetInt   (string cSet_int_name   ,int    iValue,kjReturn &amp;Error=kjReturn());
            void     SetFloat (string cSet_float_name ,float  fValue,kjReturn &amp;Error=kjReturn());
            void     SetBool  (string cSet_bool_name  ,bool   bValue,kjReturn &amp;Error=kjReturn());
};
...
</code></pre>
<p>und zum Anderen habe ich hier einen Auszug aus einem Header, indem es nur Funktionen in einem namespace gibt.<br />
KJMath.hpp</p>
<pre><code class="language-cpp">namespace kjMath
{
    float AbsoluteValue (float fNumber,kjReturn &amp;Error=kjReturn());                 //Betrag
    float Exponentiation(float fBasis,int iExponent,kjReturn &amp;Error=kjReturn());    //Potenzieren
    float RootExtraction(float fRadicand,int iExponent,kjReturn &amp;Error=kjReturn()); //Radizieren
};
</code></pre>
<p>Es geht mir hierbei um die Defaultwerte. In der Klasse bemängelt der Compiler bei den kjReturn-werten nichts, doch bei dem namespace, also wo die Funktionen für sich stehen, bemängelt er, dass der Defaultwert einen falschen Datentyp hat:<br />
Fehler</p>
<pre><code class="language-cpp">23 E:\KJ_DatenXP\Programmierung\Projekte\Projekte DevC++\Konsole\KJClasses-Testumgebung\KJMath.hpp default argument for `kjReturn&amp;Error' has type `kjReturn' 
24 E:\KJ_DatenXP\Programmierung\Projekte\Projekte DevC++\Konsole\KJClasses-Testumgebung\KJMath.hpp default argument for `kjReturn&amp;Error' has type `kjReturn' 
25 E:\KJ_DatenXP\Programmierung\Projekte\Projekte DevC++\Konsole\KJClasses-Testumgebung\KJMath.hpp default argument for `kjReturn&amp;Error' has type `kjReturn'
</code></pre>
<p>So der Fehler ist ja verständlich nur ich frage mich, wieso ist das so und warum. Außerdem interessiert mich natürlich wie ich die Fehler umgehen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/156465/default-argumente-in-klassen-und-namespaces</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 19:43:13 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/156465.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 16 Aug 2006 20:30:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Default Argumente in Klassen und Namespaces on Wed, 16 Aug 2006 20:30:16 GMT]]></title><description><![CDATA[<p>Also ich habe zum Einen hier einen Auszug aus einer Klasse:<br />
KJLog.hpp</p>
<pre><code class="language-cpp">...
class kjLog
{
      public:
            void     SetString(string cSet_string_name,string cValue,kjReturn &amp;Error=kjReturn());
            void     SetInt   (string cSet_int_name   ,int    iValue,kjReturn &amp;Error=kjReturn());
            void     SetFloat (string cSet_float_name ,float  fValue,kjReturn &amp;Error=kjReturn());
            void     SetBool  (string cSet_bool_name  ,bool   bValue,kjReturn &amp;Error=kjReturn());
};
...
</code></pre>
<p>und zum Anderen habe ich hier einen Auszug aus einem Header, indem es nur Funktionen in einem namespace gibt.<br />
KJMath.hpp</p>
<pre><code class="language-cpp">namespace kjMath
{
    float AbsoluteValue (float fNumber,kjReturn &amp;Error=kjReturn());                 //Betrag
    float Exponentiation(float fBasis,int iExponent,kjReturn &amp;Error=kjReturn());    //Potenzieren
    float RootExtraction(float fRadicand,int iExponent,kjReturn &amp;Error=kjReturn()); //Radizieren
};
</code></pre>
<p>Es geht mir hierbei um die Defaultwerte. In der Klasse bemängelt der Compiler bei den kjReturn-werten nichts, doch bei dem namespace, also wo die Funktionen für sich stehen, bemängelt er, dass der Defaultwert einen falschen Datentyp hat:<br />
Fehler</p>
<pre><code class="language-cpp">23 E:\KJ_DatenXP\Programmierung\Projekte\Projekte DevC++\Konsole\KJClasses-Testumgebung\KJMath.hpp default argument for `kjReturn&amp;Error' has type `kjReturn' 
24 E:\KJ_DatenXP\Programmierung\Projekte\Projekte DevC++\Konsole\KJClasses-Testumgebung\KJMath.hpp default argument for `kjReturn&amp;Error' has type `kjReturn' 
25 E:\KJ_DatenXP\Programmierung\Projekte\Projekte DevC++\Konsole\KJClasses-Testumgebung\KJMath.hpp default argument for `kjReturn&amp;Error' has type `kjReturn'
</code></pre>
<p>So der Fehler ist ja verständlich nur ich frage mich, wieso ist das so und warum. Außerdem interessiert mich natürlich wie ich die Fehler umgehen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1118735</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1118735</guid><dc:creator><![CDATA[Kevinus]]></dc:creator><pubDate>Wed, 16 Aug 2006 20:30:16 GMT</pubDate></item><item><title><![CDATA[Reply to Default Argumente in Klassen und Namespaces on Thu, 17 Aug 2006 03:58:36 GMT]]></title><description><![CDATA[<p>wie und wo ist denn kjReturn definiert? im übrigen ist das ganze in jedem falle falsch (sowohl in der klasse als auch in den namespace-funktionen), da rvalues nicht an referenzen auf nicht-const gebunden werden können). möglicherweise ist es hier ohnehin sinnvoller mit exceptions zu arbeiten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1118824</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1118824</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 17 Aug 2006 03:58:36 GMT</pubDate></item><item><title><![CDATA[Reply to Default Argumente in Klassen und Namespaces on Thu, 17 Aug 2006 07:33:55 GMT]]></title><description><![CDATA[<p>Das es falsch ist, habe ich mittlerweile auch bemerkt, doch verwundert es mich, da es in der Klasse funktioniert???? Ich habe es bereits angewendet. KjReturn ist so definiert:</p>
<pre><code class="language-cpp">enum kjReturn
{
    SUCCESS=0,
    FAILURE=1,
    FAILURE_INIT_RECALL=2,
    FAILURE_EXIT_RECALL=3,
    FAILURE_GET=4,
    FAILURE_SET=5
};
</code></pre>
<p>Ist es vielleicht einfacherer ein static Objekt von kjReturn zu instanzieren und dieses als Default Argument zuzuweisen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1118897</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1118897</guid><dc:creator><![CDATA[Kevinus]]></dc:creator><pubDate>Thu, 17 Aug 2006 07:33:55 GMT</pubDate></item><item><title><![CDATA[Reply to Default Argumente in Klassen und Namespaces on Thu, 17 Aug 2006 07:39:34 GMT]]></title><description><![CDATA[<p>Eine Möglichkeit wäre auch, eine Methode ohne kjReturn-Parameter anzubieten, die die Methode mit kjReturn-Parameter dann mit einem Stackobjekt aufruft und dieses dann verwirft.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1118900</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1118900</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 17 Aug 2006 07:39:34 GMT</pubDate></item><item><title><![CDATA[Reply to Default Argumente in Klassen und Namespaces on Thu, 17 Aug 2006 07:43:28 GMT]]></title><description><![CDATA[<p>Das durch Überladung zu regeln, meinst du das damit?</p>
<p>Aber mich interessiert wieso DevC++ 4.9.9.2 die Klasse ohne zu murren kompiliert, mit der falschen Zuweisung, aber das dann bei den StandAloneFunktionen als Fehler anprangert???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1118903</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1118903</guid><dc:creator><![CDATA[Kevinus]]></dc:creator><pubDate>Thu, 17 Aug 2006 07:43:28 GMT</pubDate></item></channel></rss>