Einzelnen Beitrag anzeigen

Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: draw poker, hand erkennung

  Alt 1. Mär 2007, 19:19
Delphi-Quellcode:
TKartenWert = 1..13; // 1 = AS, 11 = Bube, 12 = Dame, 13 = König
TKartenFarbe = (kfKaro, kfHerz, kfPik, kfKreuz);
TKartenPosition = 1..5;
Hierdurch wurden drei Typen deklariert. Integer ist auch ein Typ, nur dass man den nichtmehr selbst deklarieren muss. Die Variablen und Parameter sollten dann nicht den Namen, sondern den Typen TKartenFarbe o.ä. haben. Man deklariert ja auch keine Variablen namens Integer, sie sind höchstens vom Typ Integer. Die meisten Typen beginnen mit dem Präfix "T", wenn man einen Typen (Integer ist da eine der ganz wenigen Ausnahmen). Die Parameter- und Variablennamen sollten deswegen nicht auch mit T anfangen. Das führt nur zu Verwirrung.

Du müsstest deinen Konstruktor so umschreiben:

Delphi-Quellcode:
constructor TKarte.create(Wert: TKartenWert; Position: TKartenPosition; Farbe: TKartenFarbe);
begin
  inherited create;
  FWert := Wert;
  FPosition := Position;
  FFarbe := Farbe;
end;
Das heißt es wird ein Parameter Namens Wert vom Typ TKartenWert übergeben. Das Feld deiner Klasse namens FWert ist ebenfalls vom Typen TKartenWert.

Weiß nicht, ob's klar geworden ist, komisch zu erklären. Sonst frag nochmal nach.
  Mit Zitat antworten Zitat