Najlepsze pytania
Chronologia
Czat
Perspektywa

Argument domyślny

Z Wikipedii, wolnej encyklopedii

Remove ads

Argument domyślnydomyślna wartość argumentu – to wartość typu zgodnego z typem pewnego parametru, zdefiniowana przez programistę w deklaracji podprogramu, która zostanie użyta jako argument (parametr aktualny), przypisany do danego parametru (parametru formalnego), w przypadku, gdy w wywołaniu danego podprogramu, nie zostanie wyspecyfikowany argument dla pewnego parametru.

Stosowanie argumentów domyślnych

Podsumowanie
Perspektywa

Definiując podprogram, zwykle (z wyjątkiem podprogramów bezparametrowych), specyfikuje się listę parametrów, służących do komunikacji danego podprogramu z otoczeniem. W wywołaniu takiego podprogramu z parametrami, kojarzone są odpowiednie argumenty, specyfikowane w instrukcji wywołania, bądź w wywołaniu podprogramu funkcyjnego w wyrażeniu[1]. Większość języków programowania ma tak zdefiniowaną składnię, że wymagane jest wyspecyfikowanie w wywołaniu podprogramu tylu argumentów ile zadeklarowano parametrów podprogramu. Brak specyfikacji któregokolwiek z argumentów, który odpowiadałby pewnemu parametrowi, jest w takim przypadku sygnalizowane jako błąd. Przykładowy język programowania to Pascal[2]. Pewne języki lub implementacje języków dopuszczają jednak definiowanie wartości domyślnych argumentów dla wybranych parametrów, umożliwiających wywołanie podprogramu, z niepełną listą argumentów, tzn. taką listą argumentów, w której pominięto specyfikację tych argumentów, które odpowiadają parametrom ze zdefiniowanymi wartościami domyślnymi argumentów. W tej sytuacji parametr, dla którego nie wyspecyfikowano odpowiadającego mu argumentu, zostanie skojarzony z wartością domyślną, zdefiniowaną w deklaracji parametru.

Zastosowanie argumentów domyślnych:

  • skraca i upraszcza kod źródłowy dla najczęściej stosowanej wartości danego argumentu,
  • ale może prowadzić do błędów.
Remove ads

Specyfikowanie argumentów domyślnych

Sposób specyfikacji wartości domyślnej argumentu dla pewnego parametru, zależny jest od specyfiki składni danego języka programowania. Specyfikacja ta występuje w deklaracji danego parametru, która to deklaracja najczęściej w językach programowania wysokiego poziomu, stanowi integralną część deklaracji samego podprogramu.

Przykład w języku Ada[3]:

Function talc(x: in INTEGER; y: in INTEGER:=1);
Remove ads

Języki programowania

Podsumowanie
Perspektywa

Wiele języków programowania wysokiego poziomu nie dopuszcza konstrukcji polegającej na definiowaniu argumentów domyślnych. Nie ma takich możliwości np. język C[4], Icon[5], Modula-2[6] i inne, czy wcześniej wymieniony Pascal[2]. Dla tych języków pojawiają się jednak nowsze implementacje, których autorzy wprowadzają taką możliwość. Przykładem jest język Object Pascal w środowisku Delphi[7]. Wśród języków, w których składnia definiuje taką konstrukcję są m.in. Ada[3], Visual Basic.

Ada

W języku Ada definiowanie wartości domyślnej argumentu ma analogiczną postać do inicjalizacji zmiennej czy też wartości domyślnej definiowanego typu w tym języku. Ma postać przypisania, tworzonego za pomocą dwuznakowego symbolu tego języka „:=”, po specyfikacji atrybutów danego parametru. Specyfikacje argumentów, dla paramentów ze zdefiniowaną wartością domyślną, mogą zostać pominięte w wywołaniu takiego podprogramu[3].

Object Pascal

W języku Object Pascal, w porównaniu z Pacalem, wprowadzono m.in. możliwość definiowania argumentów domyślnych. Definicja taka umieszczona zostaje w nagłówku definiowanego podprogramu.

Przykład:

procedure test(a:integer; opcja:integer=1; nazwa:string='pusta');

Jak w powyższym przykładzie widać, wartość domyślną specyfikuje się tak jak w definicji stałej po znaku "=", a nie jak po znakach w przypisaniu ":=". Należy podkreślić, że parametry z wartościami domyślnymi argumentów, muszą być definiowane na końcu listy parametrów danego podprogramu - tzn. nie może po nich wystąpić jakikolwiek parametr obowiązkowy (tj. bez wartości domyślnej)[7].

PHP

W języku PHP definiuje się wartości domyśle argumentów podobnie jak w większości innych języków, w których dostępna jest tak konstrukcja.

function Przyklad($a, $b= 0)

Python

Również w języku Python można definiować argumenty domyślne, w nomenklaturze tego języka i literaturze przedmiotu nazywane argumentami opcjonalnymi[8].

Przykład:

def info(element, spacing=10, collapse=1):

Visual Basic

Przykład deklaracji argumentu domyślnego:

Sub MsgBL(M As String, Optional P As Variant=5)
  ...
End Sub

C++

Przykład deklaracji argumentu domyślnego:

int pomnoz(int x, int y = 0) {return x*y;}
Remove ads

Zobacz też

Przypisy

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads