2015-11-30 122 views
-2

讓說,我有如下協議:數據類型

protocol DataResponse { .... }

我的問題是,我怎麼能做出這樣下面另一種協議? :

protocol AnotherProtocol { var data:[DataProtocol] { get } }

當我試圖做上述下面我Struct,我得到Type 'MyStruct' does not conform to protocol 'AnotherProtocol'

struct myStruct : AnotherProtocol { 

    var data:[a struct implements DataProtocol] ... 
} 

回答

0

你想知道什麼?

protocol DataResponse { 
} 

protocol AnotherProtocol { 
    var data:[DataResponse] { get } 
} 

struct myStruct : AnotherProtocol { 
    var data:[DataResponse] 
} 

此代碼編譯。

0

你在你的答案代碼不是很清楚,所以我不知道你正在嘗試做的,但應該爲你的作品:

protocol DataProtocol { 
} 

protocol AnotherProtocol { 
    var data:[DataProtocol] { get } 
} 

struct dataStruct : DataProtocol { 
} 

struct myStruct : AnotherProtocol { 

    var data:[DataProtocol] { 
     return [dataStruct()] 
    } 
} 
+0

我想要做的就是'結構MYSTRUCT:AnotherProtocol {dataStruct] { return [dataStruct()] } } '因爲我有很多結構體實現'DataProtocol' –