Я играю с протоколами и как им соответствовать.Как вы можете согласовать набор переменных протокола & get?
protocol Human {
var height: Int {get set}
}
struct boy : Human {
var height: Int {return 5} // error!
}
Я пытаюсь изучить различные способы, которыми я могу реализовать набор и получить. Однако приведенный выше код выдает следующее сообщение об ошибке:
type 'boy' does not conform to protocol 'Human'
Однако писать, как показано ниже, не будет иметь каких-либо ошибок:
struct boy : Human {
var height = 5 // no error
}
я не понимаю разницы, ни того, что именно должно быть реализовано при вы можете также установить переменную. Я изучал разные вопросы и учебники, но все они просто пишут и уходят без каких-либо более глубоких объяснений.
FWIW 'структура мальчик: Human { пусть высота = 5 // ошибка! } 'также приведет к ошибке. Причина упоминается в [this] (https://stackoverflow.com/questions/40820913/how-can-you-conform-protocol-variables-set-get/40820968?noredirect1_comment85239656_40820968) комментарий Мартина. * 'var' объявляет переменную и' let' константу. Как хранимые свойства, первая - это чтение/запись, а вторая только для чтения * – Honey