Sobes.tech
Junior — Middle

Трябва ли задължително да се присвои стойност на статична променлива при обявяването ѝ?

sobes.tech AI

Отговор от AI

В iOS (Swift или Objective-C) не е задължително да присвоявате стойност на статичните променливи при декларацията. Ако стойността не бъде присвоена:

  • За типовете, които поддържат начална инициализация по подразбиране, променливата ще бъде инициализирана със стойността по подразбиране (например, 0 за числа, nil за опционални).
  • Ако променливата е обявена като let (константа), тогава трябва задължително да й присвоите стойност при декларацията.

Пример в Swift:

class Example {
    static var counter: Int // не е задължително да се присвоява веднага
    static var name: String = "Default" // присвоена стойност
}

// При първия достъп до Example.counter ще се получи грешка, ако не е инициализирана явно преди използване.

Затова, въпреки че присвояването не е задължително при декларацията, преди използване на статична променлива трябва да я инициализирате, иначе ще възникне грешка при компилация или изпълнение.