inout paraméterek

A Swift függvényekbe átadott paraméterek konstansok, tehát nem változtathatók meg. Ha akarod, átadhatsz egy vagy több paramétert inoutként, ami azt jelenti, hogy a függvényeden belül megváltoztathatod őket, és ezek a változások a függvényen kívül az eredeti értékben tükröződnek.

Ha például egy számot helyben meg akarsz duplázni – azaz, közvetlenül megváltoztatni az értéket ahelyett, hogy egy újat adnál vissza – írhatsz egy ilyen függvényt:

func doubleInPlace(number: inout Int) { number *= 2}

Hogy ezt használhasd, először egy változó egész számot kell létrehoznod – nem használhatsz konstans egész számokat a inout-vel, mert azok megváltozhatnak. Szintén át kell adnod a paramétert a doubleInPlace-nak úgy, hogy a neve előtt egy végződésjelet, & használsz, ami kifejezett elismerése annak, hogy tisztában vagy vele, hogy inout-ként használod.

A kódban ezt írnád:

var myNum = 10 doubleInPlace(number: &myNum)
Hacking with Swift is sponsored by RevenueCat

SPONSORED Az alkalmazáson belüli előfizetési infrastruktúra kiépítése és karbantartása nehéz. Szerencsére van egy jobb megoldás. A RevenueCat segítségével órák, nem pedig hónapok alatt megvalósíthatja az előfizetéseket az alkalmazásához, így visszatérhet az alkalmazás építéséhez.

Próbálja ki ingyen

Támogassa a Hacking with Swiftet, és érje el a világ legnagyobb Swift-közösségét!

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

Az e-mail-címet nem tesszük közzé.