Einzelnen Beitrag anzeigen

Benutzerbild von JamesTKirk
JamesTKirk

Registriert seit: 9. Sep 2004
Ort: München
604 Beiträge
 
FreePascal / Lazarus
 
#12

AW: Result einer Funktion "Stil Frage"

  Alt 5. Nov 2012, 08:32
Nur als Bemerkung am Rande: in Free Pascal ist in den Modi fpc und objfpc der Funktionsname als "rvalue" erlaubt. Möchte man hier einen rekursiven Aufruf (bei einer parameterlosen Funktion), so muss ein leeres Klammerpaar angehängt werden.

Delphi-Quellcode:
program resulttest;

{$ifdef fpc}
{$mode objfpc}
{$endif}
{$apptype console}

function Sum: LongInt;
const
  Values: array[0..4] of Byte = (
    1, 2, 3, 4, 5
  );
var
  b: Byte;
begin
  Sum := 0;
  for b in Values do
    Sum := Sum + b; // Sum() würde die Funktion rekursiv aufrufen
end;

begin
  Writeln(Sum); // ergibt "15" und nicht "stack overflow" ;)
end.
Gruß,
Sven
Sven
[Free Pascal Compiler Entwickler]
this post is printed on 100% recycled electrons
  Mit Zitat antworten Zitat