Junior
Čo sa stane, ak funkcii, ktorá prijíma argument, odovzdáte celé číslo (integer)?
sobes.tech AI
Odpoveď od AI
Nasledujúce kroky budú:
- Bude pridelená pamäť pre hodnotu argumentu v rámci rozsahu funkcie.
- Hodnota odovzdaného celého čísla bude skopírovaná do tejto pamäti.
- Vo vnútri funkcie sa k tejto hodnote dá pristupovať podľa názvu parametra.
- Zmeny hodnoty parametra vo vnútri funkcie neovplyvnia pôvodnú hodnotu odovzdanú pri volaní, pretože odovzdanie celého čísla sa vykonáva hodnotou (kopírovanie hodnotou).
Príklad vo Swift:
func processInteger(number: Int) {
var mutableNumber = number // Vytvorí sa kópia hodnoty
mutableNumber += 10 // Zmeny ovplyvnia iba lokálnu kópiu
print("Vo vnútri funkcie: \(mutableNumber)")
}
var myInteger = 5
processInteger(number: myInteger)
print("Mimo funkcie: \(myInteger)") // Vytlačí 5