У меня есть класс, который выглядит следующим образом:Установить переменную класса из другого класса
class ContactsHolder {
static let name = "joe"
}
и из другого класса я могу назвать это так:
println(ContactsHolder.name)
Мой вопрос заключается в том, как сделать I установить эту переменную на что-то еще?
Я пробовал:
ContactsHolder.name = "bob"
и получить Cannot assign to the result of this expression
Собираюсь ли я об этом совершенно неправильно или что мне нужно сделать ??
хорошо это работает, я только что узнал, что я мог установить имя в стремительном файле и доступ из любой точки мира, даже ссылаясь на имя быстрого файла. Существуют ли недостатки, связанные с тем, что мой файл ContactsHolder.swift не имеет класса и просто имеет в нем 'var name =" joe "', и из моего контроллера представления сделайте так: 'name =" bob "println (name)' – BluGeni
Действительно, это не идеально, потому что тогда ваш контент не отделен от чего-либо еще. Плохая практика «загрязнять» глобальную сферу с помощью переменных. :) Лучше «инкапсулировать» внутри классов, структур, перечислений и т. Д. – Moritz
@BluGeni Этот ответ верный, но его, вероятно, нужно отредактировать, чтобы заявить, что это не то, как вы должны обрабатывать переменные, для новичков в программировании. Создание статических переменных может быть плохой практикой, если вы не знаете, что делаете. Подумайте о переменных, таких как «свойства» объектов реального мира. В книге есть numPages, coverColor и т. Д. Прочитайте объектно-ориентированное программирование, прежде чем идти дальше. – Chackle