Skip to content
Kezdőlap » Pozíció és nevesített paraméterek

Pozíció és nevesített paraméterek

  • Dart

Dart-ban kétfajta paramétert adhatunk egy függvénynek: az egyik a pozíció, a másik pedig a nevesített paraméter. Angolul positional és named arguments.

A kettő közötti különbséget úgy lehet megmagyarázni, hogy egy nevesített paraméterre a paraméter nevével lehet hivatkozni. A pozíció paraméternek pedig csak egy értéket adunk át abban a sorrendben, ahogyan az a függvény definícióban szerepel.

Positional

void add (num1, num2) {
 num1 + num2;
} 

// hívás:
void demo() {
 add(3, 2);
}

A fenti függvényben csak annyit tudunk, hogy van két szám típusú paramétere az első és a második pozíción. Tehát itt kötött a paraméterek hívási sorrendje!

Egy pozíció argumentum lehet opcionális, ezt a [] -lel jelöljük:

void add(a, [b]) {
 print(a + b);
} 

Az opcionális paramétereknek lehet adni kezdőértéket is:

void add(a, [b = 5]) {
 print(a + b);
} 

Named

void add({num1, num2}) {
 num1 + num2;
}

void demo() {
 add(num2: 10, num1: 23);
}  

A nevesített paraméterek esetében a paramétereket { } között adjuk meg és a hívásban is látszik egy nagy különbség: mindegy, hogy milyen sorrendben adjuk meg a paramétereket, mert a nevével tudunk rájuk hivatkozni.

Itt is lehet default értéket adni egy paraméternek:

void add({a, b = 5}) {
 print(a + b);
} 

A required kulcsszóval kötelezővé tudunk tenni paramétert:

void add({required a, required b}) {
 print(a + b);
}

A kettőt együtt használva

Például:

const ExpenseItem(this.expense, {super.key});

Itt egy konstruktoron belül használtuk a pozícionális és a nevesített paramétert. A pozíció paraméterrel szoktuk kezdeni, és ebben az esetben nem kell a required kulcsszó, mert a pozíció paraméterek minden esetben kötelezőek.

Mikor melyiket?

Fejlesztőként teljesen mindegy, hogy melyik típust használjuk. Keverhetjük is a kettőt.

Widgetek paraméter listája VSCode-ban

Ha egy függvény vagy widget paraméter listáját akarjuk megtudni, akkor írjuk le a widget nevét, utána tegyünk () zárójel párt, majd a két zárójel között CTRL+SPACE billentyű kombinációval „lejön” az összes megadható paraméter listája.

Tags:

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük