<?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[Konstruktorliste]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>ich bekomme mit folgendes Konstruktorliste immer eine Warnung von Visual Studio ausgegeben:</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;
#include&quot;test2.h&quot;

int main()
{
	Punkt p1();

return 0;
}
</code></pre>
<pre><code class="language-cpp">#ifndef PUNKT__H
#define PUNKT__H

class Punkt
{
public:
	int x;
	int y;

	Punkt();	
	~Punkt();
};

#endif PUNKT__H
</code></pre>
<pre><code class="language-cpp">#include&quot;test2.h&quot;

Punkt::Punkt() : x(0), y(0)
{

}
</code></pre>
<p>Ehrlich gesagt wusste ich nicht, wie ich den Code besser eingrenzen sollte... Vielleicht könnt ihr mir ja helfen <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/topic/305224/konstruktorliste</link><generator>RSS for Node</generator><lastBuildDate>Sun, 09 Aug 2026 01:15:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/305224.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 24 Jun 2012 10:04:35 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Konstruktorliste on Sun, 24 Jun 2012 10:05:16 GMT]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>ich bekomme mit folgendes Konstruktorliste immer eine Warnung von Visual Studio ausgegeben:</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;
#include&quot;test2.h&quot;

int main()
{
	Punkt p1();

return 0;
}
</code></pre>
<pre><code class="language-cpp">#ifndef PUNKT__H
#define PUNKT__H

class Punkt
{
public:
	int x;
	int y;

	Punkt();	
	~Punkt();
};

#endif PUNKT__H
</code></pre>
<pre><code class="language-cpp">#include&quot;test2.h&quot;

Punkt::Punkt() : x(0), y(0)
{

}
</code></pre>
<p>Ehrlich gesagt wusste ich nicht, wie ich den Code besser eingrenzen sollte... Vielleicht könnt ihr mir ja helfen <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/2226618</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2226618</guid><dc:creator><![CDATA[vip*r]]></dc:creator><pubDate>Sun, 24 Jun 2012 10:05:16 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktorliste on Sun, 24 Jun 2012 10:23:51 GMT]]></title><description><![CDATA[<ol>
<li></li>
</ol>
<pre><code class="language-cpp">Punkt p1; // und nicht Punkt p1(), weil das eine Funktionsdeklaration ist.
</code></pre>
<p>2. Nicht <code>PUNKT__H</code> , sondern <code>PUNKT_H</code> .</p>
<blockquote>
<p>Each name that contains a double underscore _ _ or begins with an underscore followed by an uppercase letter (2.12) is reserved to the implementation for any use.</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/2226623</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2226623</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sun, 24 Jun 2012 10:23:51 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktorliste on Sun, 24 Jun 2012 10:21:01 GMT]]></title><description><![CDATA[<p>vip@r schrieb:</p>
<blockquote>
<pre><code class="language-cpp">#include&lt;iostream&gt;
#include&quot;test2.h&quot;

int main()
{
	Punkt p1();
}
</code></pre>
</blockquote>
<p>Deklariert einer Funktion, die einen Punkt zurücklierfert. Du musst die Klammern weglassen.</p>
<p>Es wäre vielleicht sinnvoll die Warnung anzugeben, wenn du dich schon darauf beziehst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2226625</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2226625</guid><dc:creator><![CDATA[Nymer]]></dc:creator><pubDate>Sun, 24 Jun 2012 10:21:01 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktorliste on Sun, 24 Jun 2012 11:07:27 GMT]]></title><description><![CDATA[<p>Wenn ich die Klammer von p1 weglasse, dann kompiliert mir das Projekt gar nicht mehr. Ich bekomme dann einen Linker Error.</p>
<p>Die Warnung auf die ich mich bezogen haben lautet:</p>
<pre><code>Warnung	1	warning C4930: 'Punkt p1(void)': Funktion mit Prototyp wurde nicht aufgerufen (war eine Variablendefinition gemeint?)
</code></pre>
<p>Edit: Hab den Fehler mit Linker-Error selbst gefunden. Ich war zu blöd um zu erkennen, dass ich auch den Destruktor in die Implementierungsdatei schreiben sollte!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2226632</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2226632</guid><dc:creator><![CDATA[vip*r]]></dc:creator><pubDate>Sun, 24 Jun 2012 11:07:27 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktorliste on Sun, 24 Jun 2012 11:16:11 GMT]]></title><description><![CDATA[<p>So, jetzt hab ich eine letzt Frage:</p>
<p>Was ist der Unterschied zwischen dem auskommentierten Konstruktor mit vorgegebenen Anfangswerten, und dem einkommentierten Konstruktor, der die Anfangswerte über den Konstruktor weiterleitet? Mein Lehrbuch schweigt sich über die Vor- und Nachteile beider Möglichkeiten leider aus und ich erkenne duch eingehendes Debuggen leider auch keinen Unterschied! Könnt ihr mir den Unterschied erklären?</p>
<pre><code class="language-cpp">#include&quot;test2.h&quot;

int main()
{
	//Punkt p1;
	Punkt p1(0,0);

	p1.x;
	p1.y;

return 0;
}
</code></pre>
<pre><code class="language-cpp">#ifndef PUNKT_H
#define PUNKT_H

class Punkt
{
public:
	int x;
	int y;

	//Punkt();
	Punkt(int _x, int _y);

	~Punkt();
};

#endif PUNKT_H
</code></pre>
<pre><code class="language-cpp">#include&quot;test2.h&quot;

//Punkt::Punkt() : x(0), y(0)
//{
//
//}

Punkt::Punkt(int _x, int _y) : x(_x), y(_y)
{

}

Punkt::~Punkt()
{

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2226644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2226644</guid><dc:creator><![CDATA[vip*r]]></dc:creator><pubDate>Sun, 24 Jun 2012 11:16:11 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktorliste on Sun, 24 Jun 2012 11:27:37 GMT]]></title><description><![CDATA[<p>Mit dem Standard Konstruktor initialisiert Objekte können erstmal nur den Wert(0,0) haben.<br />
Mit dem (int,int) Konstruktor aber z.B. auch (5,5) d.h.,dass die Objekte sofort mit Werten initialisiert werden.</p>
<p>Anstatt</p>
<pre><code class="language-cpp">Punkt::~Punkt()
{

}
</code></pre>
<p>kannst du auch einfach</p>
<pre><code class="language-cpp">class Punkt
{
public:
    int x;
    int y;

    //Punkt();
    Punkt(int _x, int _y);

    ~Punkt()=default;
};
</code></pre>
<p>Schreiben oder den Destruktor gleich weglassen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2226646</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2226646</guid><dc:creator><![CDATA[Nymer]]></dc:creator><pubDate>Sun, 24 Jun 2012 11:27:37 GMT</pubDate></item><item><title><![CDATA[Reply to Konstruktorliste on Mon, 25 Jun 2012 08:43:23 GMT]]></title><description><![CDATA[<p>Danke, für eure Hilfe! Die hat mir sehr geholfen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2226924</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2226924</guid><dc:creator><![CDATA[vip*r]]></dc:creator><pubDate>Mon, 25 Jun 2012 08:43:23 GMT</pubDate></item></channel></rss>