мне нужно объявить переменную, которая будет хранить массив перечислений разного типа, например .:Swift - как объявить переменную/функционал/с перечислениями другого типа?
var enums = [EnumTypeA.Option1, EnumTypeB.Option2]
Компилятор гласит:
Тип выражения неоднозначное без больше контекста
Это необходимо для передачи любого перечисления или другого объекта в качестве параметра функции. Однако я обнаружил, что я могу передать дженерик для достижения этой цели, например .:
func f1<T>(enum: T)
, но имеющие протокола с дополнительными методами (с префиксом @objc) невозможно.
Вы упоминаете протокол @objc, может рассказать нам об этом, и какую роль должны в том, что вы пытаетесь сделать? –
Использование @objc-протоколов - это immament, чтобы объявить некоторые из своих функций как необязательные и использовать таких делегатов как слабые свойства. – Kaktusiarz
Что соответствует такому протоколу в вашем примере? –