Všechny parametry předávané do funkce Swift jsou konstanty, takže je nelze měnit. Pokud chcete, můžete jeden nebo více parametrů předat jako inout
, což znamená, že je můžete měnit uvnitř funkce a tyto změny se projeví v původní hodnotě mimo funkci.
Pokud například chcete zdvojnásobit číslo na místě – tj, přímo změnit hodnotu, místo abyste vraceli novou, můžete napsat funkci takto:
func doubleInPlace(number: inout Int) { number *= 2}
Chcete-li ji použít, musíte nejprve vytvořit proměnnou celé číslo – pomocí inout
nemůžete použít konstantní celé číslo, protože by se mohlo změnit. Parametr doubleInPlace
musíte také předat pomocí ampersandu &
před jeho názvem, což je explicitní uznání, že víte, že se používá jako inout
.
V kódu byste napsali toto:
var myNum = 10 doubleInPlace(number: &myNum)
SPONSORED Vytváření a udržování infrastruktury pro předplatné v aplikacích je náročné. Naštěstí existuje lepší způsob. S RevenueCatem můžete implementovat předplatné pro svou aplikaci v řádu hodin, ne měsíců, takže se můžete vrátit k tvorbě aplikace.
Vyzkoušejte zdarma
Sponzorujte Hacking with Swift a oslovte největší komunitu uživatelů Swiftu na světě!