Быстрая струна против струны! против строки?

я прочиталэтот вопрос и некоторые другие вопросы. Но они не имеют никакого отношения кмой вопрос

ЗаUILabel если вы не укажете? или же! вы получите такую ​​ошибку:

Свойство @IBOutlet имеет необязательный тип 'UILabel'

Что тогда Xcode дает вам2 выбор, чтобы исправить это, вы можете сделать:

исправить это добавить? сформировать необязательный тип UIlabel?
исправить это добавить! сформировать неявно развернутый необязательный тип UIlabel?

Однако для строки вы можете просто набратьstring без? или же! и вы не получите ошибкуэто почему?

Что произойдет, еслиname не установлен? Тогда у нас будетnil не использует?, ! а такжестриж все о том, чтобы удовлетворить «безопасность типов»?

Пример:

struct PancakeHouse {
  let name: String // this doesn't have '?' nor '!'
  let photo: UIImage?
  let location: CLLocationCoordinate2D?
  let details: String
}

Моя главная путаница - это когда мы хотимне использовать опционально?

Ответы на вопрос(4)

Ваш ответ на вопрос