<?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[Fehler im Konstruktor]]></title><description><![CDATA[<p>Hallo Zusammen,</p>
<p>sitze nun schon eine ganze Weile an einem merkwürdigem Fehler.<br />
In meinem Programm (soll mal ein kleines Pokerspiel werden) gibt es die Klasse Player.<br />
In der Klasse Game wiederum sollen mehrere Objekte vom Typ Player angelegt werden.<br />
Ich möchte gleich beim anlegen eines Player-Objektes den Namen mit übergeben.<br />
Deshalb sieht mein Konstruktor in der Klasse Player wie folgt aus.</p>
<p>Hier mal der Code der Klasse Player:</p>
<pre><code>#ifndef Player_h
#define Player_h

#include &lt;vector&gt;
#include &lt;string&gt;
using namespace std;
class Player
{
public:
..
..
..
	Player(string sPlayerName);
..
..
private:
	int iPosition;
	int iSeat;
	vector &lt;int&gt; vWholeCards;	
	string sName;

};

#endif
</code></pre>
<p>So lege ich in der Klasse Game die Player-Objekte an.</p>
<pre><code>class Game {
public:
	Game(void);
	void PreFlop(void);
	void Flop(vector &lt;int&gt; vAllCards);
	~Game(void);
private:
		int iPot;
		cardGame Spiel;

		vector &lt;int&gt; vAllCards;
		Player Spieler1(&quot;tt&quot;);
</code></pre>
<p>Dabei erhalte ich folgende Fehlermeldungen in Visual Studio.</p>
<p>g:\c++\cardgame\cardgame\cardgame\game.h(26) : error C2059: Syntaxfehler: 'Zeichenfolge'<br />
g:\c++\cardgame\cardgame\cardgame\game.cpp(15) : error C3867: &quot;Game::Spieler1&quot;: Dem Funktionsaufruf fehlt die Argumentliste. Verwenden Sie &quot;&amp;Game::Spieler1&quot;, um einen Zeiger auf den Member zu erstellen.<br />
main.cpp<br />
g:\c++\cardgame\cardgame\cardgame\game.h(26) : error C2059: Syntaxfehler: 'Zeichenfolge'<br />
Player.cpp<br />
test.cpp<br />
g:\c++\cardgame\cardgame\cardgame\game.h(26) : error C2059: Syntaxfehler: 'Zeichenfolge'</p>
<p>Was zur Hölle mache ich falsch???</p>
<p>Gruß Pascal</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/229108/fehler-im-konstruktor</link><generator>RSS for Node</generator><lastBuildDate>Mon, 28 Sep 2026 03:52:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/229108.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 07 Dec 2008 17:53:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fehler im Konstruktor on Sun, 07 Dec 2008 17:53:05 GMT]]></title><description><![CDATA[<p>Hallo Zusammen,</p>
<p>sitze nun schon eine ganze Weile an einem merkwürdigem Fehler.<br />
In meinem Programm (soll mal ein kleines Pokerspiel werden) gibt es die Klasse Player.<br />
In der Klasse Game wiederum sollen mehrere Objekte vom Typ Player angelegt werden.<br />
Ich möchte gleich beim anlegen eines Player-Objektes den Namen mit übergeben.<br />
Deshalb sieht mein Konstruktor in der Klasse Player wie folgt aus.</p>
<p>Hier mal der Code der Klasse Player:</p>
<pre><code>#ifndef Player_h
#define Player_h

#include &lt;vector&gt;
#include &lt;string&gt;
using namespace std;
class Player
{
public:
..
..
..
	Player(string sPlayerName);
..
..
private:
	int iPosition;
	int iSeat;
	vector &lt;int&gt; vWholeCards;	
	string sName;

};

#endif
</code></pre>
<p>So lege ich in der Klasse Game die Player-Objekte an.</p>
<pre><code>class Game {
public:
	Game(void);
	void PreFlop(void);
	void Flop(vector &lt;int&gt; vAllCards);
	~Game(void);
private:
		int iPot;
		cardGame Spiel;

		vector &lt;int&gt; vAllCards;
		Player Spieler1(&quot;tt&quot;);
</code></pre>
<p>Dabei erhalte ich folgende Fehlermeldungen in Visual Studio.</p>
<p>g:\c++\cardgame\cardgame\cardgame\game.h(26) : error C2059: Syntaxfehler: 'Zeichenfolge'<br />
g:\c++\cardgame\cardgame\cardgame\game.cpp(15) : error C3867: &quot;Game::Spieler1&quot;: Dem Funktionsaufruf fehlt die Argumentliste. Verwenden Sie &quot;&amp;Game::Spieler1&quot;, um einen Zeiger auf den Member zu erstellen.<br />
main.cpp<br />
g:\c++\cardgame\cardgame\cardgame\game.h(26) : error C2059: Syntaxfehler: 'Zeichenfolge'<br />
Player.cpp<br />
test.cpp<br />
g:\c++\cardgame\cardgame\cardgame\game.h(26) : error C2059: Syntaxfehler: 'Zeichenfolge'</p>
<p>Was zur Hölle mache ich falsch???</p>
<p>Gruß Pascal</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1626597</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1626597</guid><dc:creator><![CDATA[Passi222]]></dc:creator><pubDate>Sun, 07 Dec 2008 17:53:05 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler im Konstruktor on Sun, 07 Dec 2008 19:21:45 GMT]]></title><description><![CDATA[<p>Passi222 schrieb:</p>
<blockquote>
<p>Was zur Hölle mache ich falsch???</p>
</blockquote>
<p>Du hast innerhalb der Klassendefinition eine Anweisung. Dort sind aber nur Deklarationen zulässig. Das betrifft folgende Codezeile:</p>
<pre><code class="language-cpp">Player Spieler1(&quot;tt&quot;);
</code></pre>
<p>Um einen Member zu initialisieren, kannst du die Konstruktor-Initialisierungsliste verwenden:</p>
<pre><code class="language-cpp">Game::Game() : Spieler1(&quot;tt&quot;)
{
    // Konstruktorrumpf
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1626654</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1626654</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 07 Dec 2008 19:21:45 GMT</pubDate></item></channel></rss>