Syntaxfehler in Zeile, finde den Fehler nicht.

FirstBorg

Grünschnabel
Hi

Ich hab folgenden Code:
Code:
struct cards		// Karten definition
{
	string Name;
	int wert;
	int team;
	int Trang;
	string Farbe;
};

struct player
{
	bool hkarte;
	vector <cards> karte(6);
	bool dran;
};

Ich krieg den Fehler in der Zeile vector <cards> karte(6);
Der Fehler lautet: error C2059: Syntaxfehler: 'constant'

Allerdings sehe ich den Fehler nicht... ist es möglich, das man keinen vector im struct benutzen darf?
Thx
 
Dies ist vermutlich das Problem.
Code:
vector <cards> karte(6);
Du musst karte im Konstruktor des player-structs initialisieren. Direkt bei der Deklaration geht das nicht.

Beispiel (ungetestet):
Code:
player()
{
  karte.resize( 6 );
}
 
In C++ sind structs im Prinzip dasselbe wie Klassen, können auch Konstruktoren und Memberfunktionen haben.

Bevor hier wieder irgendwelche Pedanten rummeckern, es sind kleine Unterschiede: Die Members von structs sind generell public, bei Klassen hingegen private.
 
Endurion hat gesagt.:
In C++ sind structs im Prinzip dasselbe wie Klassen, können auch Konstruktoren und Memberfunktionen haben.

Bevor hier wieder irgendwelche Pedanten rummeckern
Ey, du Frechmops! :)
Den Pedantenschuh muss ich mir jetzt leider anziehen.

Endurion hat gesagt.:
, es sind kleine Unterschiede: Die Members von structs sind generell public, bei Klassen hingegen private.
Das mit dem "generell" stimmt so nämlich nicht. In structs sind Eigenschaften und Methoden voreingestellt public, aber man kann dennoch durch Verwendung von "private" und "protected" private und geschützte Methoden und Eigenschaften anlegen; insofern ist "generell" irreführend.

Ich bin sicher, dass du das auch weisst und es nur unklar ausgedrückt hast. Sorry für mein Gepingel! :)
 
Arghhh!
Ich wurde gepingelt! :D

Aber stimmt schon, das hatte ich gemeint, und mich unklar ausgedrückt ;)


[60-sekunden-entschuldigung-abgelehnt!]
 
Zurück