В Swift тип перечисления может иметь связанные значения. Эти значения используются для хранения дополнительных данных вместе с каждым случаем перечисления. Эта функция обеспечивает большую гибкость и функциональность для типа перечисления. Вот пример типа перечисления со связанными значениями:

vbnetCopy code
enum NetworkResponse {
    case success(String)
    case error(String)
}

В этом примере перечисление NetworkResponse имеет два варианта: success и error. Случай success имеет связанное значение типа String, которое используется для хранения сообщения об успехе. Случай error также имеет связанное значение типа String, которое используется для хранения сообщения об ошибке.

Мы можем создать экземпляр перечисления NetworkResponse и присвоить его переменной следующим образом:

bashCopy code
let response = NetworkResponse.success("Data retrieved successfully.")

В этом примере мы создали экземпляр перечисления NetworkResponse с регистром success и связанным значением "Data retrieved successfully.".

Мы можем получить доступ к связанным значениям с помощью оператора switch следующим образом:

swiftCopy code
switch response {
case .success(let message):
    print(message)
case .error(let message):
    print(message)
}

В этом примере мы используем оператор switch для проверки значения переменной response. Если response имеет значение success, соответствующее значение будет присвоено константе message. Затем мы можем вывести это сообщение на консоль.

Точно так же, если response имеет значение error, соответствующее значение будет присвоено константе message. Затем мы также можем вывести это сообщение на консоль.

Связанные значения обеспечивают мощный способ хранения дополнительной информации с помощью регистров enum, что делает их ценным инструментом в программировании на Swift.