[linux-l] Designfrage bzgl. Deckverwaltung

Frank Reker frank at reker.net
Fr Okt 21 14:33:28 CEST 2005


Am Fri 21. Oct 2005 12:25 +0000 schrieb Kai Kuehne:

>Undzwar habe ich vor mir fuer das Kartenspiel Magic eine kleine
>Deckverwaltung (bis jetzt in C++) zu basteln.
>
>Eine Karte hat z.B. eine Eigenschaft "Farbe".
>Moegliche Werte sind schwarz, blau, rot... usw.
>Es kommen keine neuen dazu.
>
>Bei 1) bekomme ich Zahlen, was imho ziemlich unuebersichtlich wird,
>wenn jede Eigenschaft der Karten-Klasse eine Ganzzahl ist.

imho aber einfacher zu handeln. ich hab das so geloest, das ich jede
eigenschaft als int hatte (mit #define) und dann ge-or't.
#define KARTE_KARO	0
#define KARTE_HERZ	(1<<3)
#define KARTE_PIK	(2<<3)
#define KARTE_KREUZ	(3<<3)
#define KARTE_SIEBEN	0
#define KARTE_ACHT	1
#define KARTE_NEUN	2
...
kreuz-8 waere dann (KARTE_KREUZ|KARTE_ACHT)
aufdroeseln mit:
#define GET_FARBE(karte)	((karte) & (3<<3))
#define GET_WERT(karte)		((karte) & 7)

das schoene ist, du hast nur eine zahl (hier zwischen 0 und 31)
zu handeln.

-- 
Don't worry be happy ...
Ciao Frank
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 189 bytes
Beschreibung: nicht verfügbar
URL         : <https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/attachments/20051021/2d659456/attachment.sig>


Mehr Informationen über die Mailingliste linux-l