funkcje w delphi

jjczopek
  • Rejestracja: dni
  • Ostatnio: dni
0

Niech mi ktoś powie, czy to wystarczy że mam:
[code]function nazwa(blabla:string):string
begin
blabla:=blabla+'xyz';
end;

text:=blabla('abc');
edit1.text:=text;[/code]

I jak dobrze kapuje, to w edit1 powinno pokazać się abcxyz, czyż nie ??

Deti
  • Rejestracja: dni
  • Ostatnio: dni
0

Hmmm, chyba nie :(

SH
  • Rejestracja: dni
  • Ostatnio: dni
0

function Nazwa(blabla: String): String;
begin
Result := blabla + 'xyz';
end;

I będzie OK.

[b]Dopisane[/b]:
Użycie to:

Edit1.Text := Nazwa('abc');

wtedy w Edit1 pokaże się abcxyz.

KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 137
0

Wydaje mi się, że powinno być jeszcze var, czyli

function Nazwa(var blabla: string): string;

Kris

SH
  • Rejestracja: dni
  • Ostatnio: dni
0

Wydaje mi się, że powinno być jeszcze var

Żeby zrobić to za pomocą var to trzeba tak:

procedure Nazwa(var blabla: String);
begin
blabla := blabla + 'xyz';
end;

Zmienna := 'abc';
Nazwa(Zmienna);
Edit1.Text := Zmienna;

Freebird
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 275
0

function nazwa(blabla:string):string
begin
blabla:=blabla+'xyz';
end;

text:=blabla('abc');
edit1.text:=text;

przede wszystkim na co nikt nie zwrócił uwagi to, to że źle wywołujesz funkcję.

Powinno być tak:

function nazwa(blabla:string):string
begin
Result:=blabla+'xyz';
end;

edit1.text:=nazwa('abc');

I teraz będzie działało :P

Igorz
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 278
0

Wydaje mi się, że powinno być jeszcze var

Żeby zrobić to za pomocą var to trzeba tak:

procedure Nazwa(var blabla: String);
begin
blabla := blabla + 'xyz';
end;

Zmienna := 'abc';
Nazwa(Zmienna);
Edit1.Text := Zmienna;

To co tu napisales to procedura a jemu chyba chodziło o funkcję. :|

poza tym VAR przed parametrem polecam uzywac tylko kiedy do zwrócenia jest wiecej jak jedna rzecz. Patrz np funcja VAL

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.