Hi,
unten habe ich eine Klasse für ein 32 Card Game geschrieben.
Allerdings gefällt mir die Deckerstellung nicht sehr gut. Mit dem Hintergedanken, dass ich vielleicht ja auch 52 Karten nehmen könnte.
Lässt sich dies in irgendeiner Weise verkürzen bzw. optimieren?
Hier der Code:
unten habe ich eine Klasse für ein 32 Card Game geschrieben.
Allerdings gefällt mir die Deckerstellung nicht sehr gut. Mit dem Hintergedanken, dass ich vielleicht ja auch 52 Karten nehmen könnte.
Lässt sich dies in irgendeiner Weise verkürzen bzw. optimieren?
Hier der Code:
PHP:
#include <iostream>
#include <cstdlib>
#include <string>
#include <conio.h>
#include <algorithm>
using namespace std;
class Card {
public:
void assign(const string & s, const string & f) {
suit = s;
face = f;
}
const string getSuit() const {
return suit;
}
const string getFace() const {
return face;
}
private:
string suit;
string face;
};
class Game {
public:
Game() {
deck[0].assign("sieben", "Karo");
deck[1].assign("sieben", "Herz");
deck[2].assign("sieben", "Pik");
deck[3].assign("sieben", "Kreuz");
deck[4].assign("acht", "Karo");
deck[5].assign("acht", "Herz");
deck[6].assign("acht", "Pik");
deck[7].assign("acht", "Kreuz");
deck[8].assign("neun", "Karo");
deck[9].assign("neun", "Herz");
deck[10].assign("neun", "Pik");
deck[11].assign("neun", "Kreuz");
deck[12].assign("zehn", "Karo");
deck[13].assign("zehn", "Herz");
deck[14].assign("zehn", "Pik");
deck[15].assign("zehn", "Kreuz");
deck[16].assign("Bube", "Karo");
deck[17].assign("Bube", "Herz");
deck[18].assign("Bube", "Pik");
deck[19].assign("Bube", "Kreuz");
deck[20].assign("Dame", "Karo");
deck[21].assign("Dame", "Herz");
deck[22].assign("Dame", "Pik");
deck[23].assign("Dame", "Kreuz");
deck[24].assign("Koenig", "Karo");
deck[25].assign("Koenig", "Herz");
deck[26].assign("Koenig", "Pik");
deck[27].assign("Koenig", "Kreuz");
deck[28].assign("Ass", "Karo");
deck[29].assign("Ass", "Herz");
deck[30].assign("Ass", "Pik");
deck[31].assign("Ass", "Kreuz");
}
private:
Card deck[32];
};