Swift не может присвоить значение типа [String: SomeProtocol] типу [String: SomeProtocol] - PullRequest
0 голосов
/ 24 ноября 2018

У меня есть протокол под названием SomeProtocol и несколько структур, которые ему соответствуют

struct myStruct1: SomeProtocol {}
struct myStruct2: SomeProtocol {}

У меня есть карта

var myArray = [String : SomeProtocol]()

И когда я пытаюсь

myArray = ["val1": myStruct1(), "val2": myStruct2()] 

Я получил ошибку:

Swift не может присвоить значение типа [String: SomeProtocol] для типа [String: SomeProtocol]

1 Ответ

0 голосов
/ 06 января 2019

Как отметил Хэмиш в комментариях: это произошло потому, что в проекте было два определения SomeProtocol.

Чтобы решить эту проблему, вам просто нужно переименовать один из протоколов.

...