Einzelnen Beitrag anzeigen

choose

Registriert seit: 2. Nov 2003
Ort: Bei Kiel, SH
729 Beiträge
 
Delphi 2006 Architect
 
#25

Re: Delphi objektorientiert?

  Alt 19. Nov 2005, 12:31
Hey Chewie,

nimm mein Beispiel von oben (#21) es zeigt eine "Schleife", die die "Zahlen" 1 bis 5 ausgibt.
block ist ein Objekt, dass die Nachricht value: aValue empfangen kann. Es ist über den Konstruktor
Code:
[:each | each print]
so angelegt, dass es bei der Varbeitung der Nachricht dem Parameter aValue die Nachricht print schickt. Gültig ist daher der Code
Code:
block value: self
bei dem das Objekt self letzlich die Nachricht print gesendet wird.
Mit der Nachricht to: aNumber erzeugt ein Zahlenobjekt eine Sequenz mit den Intervallgrenzen des eigenen und dem übergebenen Wert. Diese Sequenz ist ein OBjekt eines Nachfolgers von Collection, einer Klasse, deren Exemplare die Nachricht do: aBlock verstehen. Wann immer eine Collection diese Nachricht abarbeitet, wird aBlock nacheinander jedes Element der Collection mit value: aValue übergeben.
Also
Code:
aBlock := [:i | i print].
aNumber := 1;
anotherNumber := 5;
aSequence := aNumber to: anotherNumber;
aCollection := aSequence;
aCollection do: aBlock;
bzw
Code:
(aNumber to: anotherNumber) do: aBlock
oder
Code:
1 to: 5 do [:i| i print]
dieses Beispiel orientiert sich an der Sprache Smalltalk.
gruß, choose
  Mit Zitat antworten Zitat