Ich versuche, ein Tic-Tac-Toe-Spiel zu codieren und kann nicht herausfinden, wie push_back
ein '+'
char, wenn ich dran bin.Wie push_back etwas in einem 2D-Vektor
Also wenn ein Spieler zum Beispiel "Oben links" tippt, was im Grunde bedeutet, dass ich oben links möchte, dass das Spiel nach der korrekten Eingabe sucht und einen '+'
an der vom Spieler gewählten Position platziert. Was ich tue, scheint nicht zu funktionieren. Entweder wird es nicht gespeichert oder ich verwende die falsche Syntax.
int main() {
vector < vector <char> > spielbrett(3, vector<char>('3'));
bool gewonnen = true;
string feld;
while (gewonnen) {
cout << "Position waehlen, z. B. Oben links oder Mitte Mitte usw. " << endl;
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
cout << spielbrett[i][j] << " ";
if (j < 2) {
cout << " | ";
}
}
if (i < 2) {
cout << endl << " ------------ " << endl;
}
}
cout << endl << endl << endl;
cin >> feld;
if (feld == "Oben links") {
spielbrett[0].push_back('+');
}
else if (feld == "Oben mittig") {
}
else if (feld == "Oben rechts") {
}
else if (feld == "Mitte links") {
}
else if (feld == "Mitte mittig") {
}
else if (feld == "Mittig rechts") {
}
else if (feld == "Unten links") {
}
else if (feld == "Unten mittig") {
}
else if (feld == "Unten rechts") {
}
}
system("pause");
}