30.06.2013 Aufrufe

Softwareentwicklung in C++ - ASC

Softwareentwicklung in C++ - ASC

Softwareentwicklung in C++ - ASC

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

B.1 Implementationen der e<strong>in</strong>zelnen Klassen 553<br />

28 MemoryGameCard ∗ card = 0;<br />

29 char symbol [ ] = ”x” ; // symbols here are only one char long !<br />

30 while ( num pairs−−)<br />

31 {<br />

32 symbol [ 0 ] = symbol generator . getNextSymbol ( ) ;<br />

33 card = new MemoryGameCard( symbol ,CARD BACK SYMBOL) ;<br />

34 putCardOnBoardRandomly( card , num rows , num cols ) ;<br />

35 card = new MemoryGameCard( symbol ,CARD BACK SYMBOL) ;<br />

36 putCardOnBoardRandomly( card , num rows , num cols ) ;<br />

37 }<br />

38 }<br />

39<br />

40 //−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

41 void MemoryGameControl : : putCardOnBoardRandomly(<br />

42 MemoryGameCard ∗ card , u<strong>in</strong>t32 num rows , u<strong>in</strong>t32 num cols )<br />

43 {<br />

44 for ( ; ; )<br />

45 {<br />

46 u<strong>in</strong>t32 row = rand () % num rows ;<br />

47 u<strong>in</strong>t32 c o l = rand () % num cols ;<br />

48 i f ( gameboard . getCard ( row , c o l ) )<br />

49 cont<strong>in</strong>ue ;<br />

50 gameboard . putCardOnBoard ( card , row , c o l ) ;<br />

51 break ;<br />

52 }<br />

53 }<br />

54<br />

55 //−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

56 void MemoryGameControl : : handleEvent ( const Event &event )<br />

57 {<br />

58 switch ( event . getType ( ) )<br />

59 {<br />

60 case Event : :WORDEVENT:<br />

61 {<br />

62 const char ∗ word = dynamic cast(<br />

63 event ) . getWord ( ) ;<br />

64 i f ( ! word )<br />

65 break ;<br />

66 i f ( c o o r d w a i t s t a t u s == WAITING FOR ROW AND COL)<br />

67 {<br />

68 switch ( word [ 0 ] )<br />

69 {<br />

70 case ’ q ’ :<br />

71 SimpleInputHandl<strong>in</strong>g : : stopDispatcher ( ) ;<br />

72 return ;<br />

73 case ’ s ’ :<br />

74 gameboard . putAllCardsFrontSideUp ( ) ;<br />

75 output handler . writeOutput ( ) ;<br />

76 return ;<br />

77 case ’ h ’ :<br />

78 gameboard . putAllCardsBackSideUp ( ) ;<br />

79 output handler . writeOutput ( ) ;<br />

80 return ;<br />

81 }<br />

82 }<br />

83 coordWasPassed ( word ) ;<br />

84 break ;<br />

85 }<br />

86 default :<br />

87 break ;<br />

88 }<br />

89 }<br />

90<br />

91 //−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

92 void MemoryGameControl : : coordWasPassed ( const char ∗ word )<br />

93 {

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!