Exemplo de programa que imprimi seus argumentos:
$
include "seed7_05.s7i"; #
Standard Seed7 library
const
proc: main is func
local
var string: stri is "";
begin
for stri range argv(PROGRAM) do
write(stri <& " ");
end for;
writeln;
end
func;
A função argv(PROGRAM) retorna um array de string.
A instrução for itera sobre os "elementos do array de
string" retornado pela função argv(PROGRAM).
A instrução for é sobrecarregada para vários tipos de collection
(coleções);
Na biblioteca padrão da Seed7 (seed7_05.s7i) a instrução for é declarada como segue:
const
proc: for (inout baseType: variable) range (in arrayType: arr_obj) do (in proc:
statements) end for is func
local
var integer: number is 0;
begin
for number range 1 to length(arr_obj) do
variable := arr_obj[number];
statements;
end
for;
end
func;
A sintaxe da instrução for é:
$
syntax expr: .for.().range.().to.().do.().end.for is -> 25;
Podemos sobrecarregar a instrução for para se adaptar a qualquer coleção que venha a ser
criada.
Devido a esta característica poderosa de Seed7, não precisamos de iterators.
Nenhum comentário:
Postar um comentário