Junior — Middle
Je potrebné pri deklarácii priradiť hodnotu statickej premennej?
sobes.tech AI
Odpoveď od AI
V iOS (Swift alebo Objective-C) nie je povinné priraďovať statickým premenným hodnotu pri ich deklarácii. Ak hodnota nie je priradená:
- Pre typy, ktoré podporujú predvolenú inicializáciu, bude premenná inicializovaná predvolenou hodnotou (napríklad
0pre čísla,nilpre voliteľné). - Ak je premenná deklarovaná ako
let(konštanta), je povinné jej priradiť hodnotu pri deklarácii.
Príklad v Swift:
class Example {
static var counter: Int // nie je povinné ihneď priradiť
static var name: String = "Default" // priradená hodnota
}
// Pri prvom prístupe k Example.counter dôjde k chybe, ak nie je explicitne inicializovaná pred použitím.
Preto, aj keď priraďovanie nie je povinné pri deklarácii, pred použitím statickej premennej ju treba inicializovať, inak dôjde k chybe pri kompilácii alebo behu.