Parameter:
Delphi-Quellcode:
procedure Foo( IchBinEinParameter : string );
var
IchBinEineVariable : string;
begin
// irgendwas
end;
Globale Variable:
Da besteht die Gefahr, dass man sich eben diese gegenseitig überschreibt:
Delphi-Quellcode:
var
IchBinGlobal : integer;
procedure Foo1;
begin
WriteLn( IntToStr( IchBinGlobal ) );
end;
procedure Foo2:
begin
for IchBinGlobal := 1 to 10 do
Foo1;
end;
procedure Foo3;
begin
for IchBinGlobal := 1 to 10 do
Foo2;
end;
besser also so (ganz ohne Globale Variable)
Delphi-Quellcode:
procedure Foo1( Value : integer );
begin
WriteLn( IntToStr( Value ) );
end;
procedure Foo2:
var
IchBinLokal : integer;
begin
for IchBinLokal := 1 to 10 do
Foo1( IchBinLokal );
end;
procedure Foo3;
var
IchBinLokal : integer;
begin
for IchBinLokal := 1 to 10 do
Foo2;
end;
Procedure/Function Wert zurückliefern
Delphi-Quellcode:
function FooFunc : integer;
begin
Result := 10;
end;
procedure FooProc( var Value : integer );
begin
Value := 10;
end;
var
FooValue : integer;
begin
FooValue := 0;
FooValue := FooFunc;
WriteLn( IntToStr( FooValue ) ); // Ausgabe: 10
FooValue := 0;
FooProc( FooValue );
WriteLn( IntToStr( FooValue ) ); // Ausgabe 10
end.
Record: da hast du ja im Prinzip schon die richtige Definition gegeben
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)