www.mamboteam.com
Project1.pl Advertisement
Start arrow Artykuły arrow Kurs Delphi arrow Rozdział VIII - Procedury i funkcje
piątek, 12 marzec 2010
 
 
Menu główne
Start
Artykuły
FAQ
Download
Kontakt
Ciekawe linki
Forum
Mapa serwisu
Logowanie





Zapomniałeś hasła?
Nie masz konta? Załóż sobie
Rozdział VIII - Procedury i funkcje Drukuj E-mail
Oceny: / 1
KiepskiBardzo dobry 
Napisał: Berl   
niedziela, 26 październik 2008
Procedura to wydzielony fragment kodu, który za każdym razem, gdy zostanie wywołany, wykonuje określoną czynność na podstawie przekazanych parametrów. Procedury deklaruje się za pomocą słowa kluczowego procedure.




 
interface
 
  procedure MojaProcedura;
  procedure MojaProcedura2;
 
implementation
 
procedure MojaProcedura;
begin
  { kod procedury }
end;
 
procedure Moja2Procedura;
begin
  { kod procedury }
end;
Deklarację procedur umieszczamy w sekcji Interface. Definicję procedury, czyli jej treść umieszczamy natomiast w sekcji Implementation. W Delphi nie ma znaczenia jakie litery będą używane podczas deklarowania nazwy procedury. Nieumieszczenie deklaracji procedury w sekcji Interface powoduje, że procedura nie będzie rozpoznawana przez inne moduły tego samego programu. Jeśli więc chcemy wywołać procedurę z innego moduły, umieszczenie deklaracji funkcji w seksji Interface jest niezbędne. Funkcja od procedury różni się tym, że zwraca rezultat swojego działania. W sekcji Interface dodaj deklarację funkcji:
 
function Sqare(Liczba: Integer) : Integer;
Funkcję deklaruje się za pomocą słowa kluczowego function. Następnie następuje nazwa funkcji. Na samym końcu deklaracji wpisywany jest rezultat wykonanej operacji w postaci zmiennej typu Integer. Teraz w sekcji Implementation wpisz definicję funkcji:
 
function Square(Liczba: Integer) : Integer;
begin
    Result := Liczba * Liczba;
end;
W funkcjach możliwe jest do wykorzystania słowo kluczowe Result. Oznacza ono rezultat wykonanej operacji. W tym wypadku rezultatem jest przemnożenie zmiennej Liczba. Funkcję wywołujemy tak samo jak procedurę:
 
Square(2);
Wywoływna zostaje funkcja, w której jako parametr podawany zostaje cyfra 2. Jeśli chcemy wyświetlić wynik zwracany przez funkcję, możemy użyć funckji ShowMessage. Pamiętać należy o konwersji typów, parametrem ShowMessage jest zmienna typu string, natomiast wynikiem funkcji Square jest zmienna typu interer. Musimy zamienić integer na string.
 
ShowMessage(IntToStr(Square(2)));
Oczywiście można też przypisać wynik działania funkcji do jakiejś zmiennej, oczywiście tego samego typu, co wynik zwracany przez funkcję
 
var
    a : integer;
begin
    a := Square(2);
end.
Od Delphi 4 istnieje możliwość przeciążania procedur i funkcji, czyli nadawania im takich samych nazw, ale innych parametrów. Wówczas należy opatrzyć taką procedurę lub funkcję klauzurą overload. W sekcji Interface wygląda to tak :
 
function Funkcja(I : Integer) : Currency; overload;
function Funkcja(I : Currency) : Currency; overload;
W sekcji implementation definiujemy te funkcje :
 
function Funkcja(I : Integer) : Currency; overload;
begin
  Result := I * I;
end;
 
function Funkcja(I : Currency) : Currency; overload;
begin
  Result := I * I;
end;
Obydwie zwracają wynik mnożenia swoich parametrów. Teraz możesz wykorzystać te polecenie w ten sposób :
 
Funkcja(2);
Funkcja(2.22);
Program dobierze i wywoła odpowiednią funkcję, przez porównanie typów parametrów.
Komentarze

Aby dodać komentarz zaloguj się. Jeśli nie masz konta, załóż je sobie.
Tylko zarejestrowani użytkownicy mogą pisać komentarze.

 
dalej »
LINKUJ PRO
Gościmy
Odwiedza nas 22 gości
Licznik odwiedzin
87153
 
Góra Góra