我想知道是否可以使用泛型类型来初始化另一个泛型。我在下面放了一个示例代码。
struct Object: Decodable {
let id: String?
let type: String?
}
struct JSON<T: Decodable>: Decodable {
let data: T?
}
func test<T: Decodable>(type: T.Type) {
let dataFromAPI = Data()
let model = JSONDecoder().decode(JSON<type>, from: dataFromAPI)
}
我收到此错误消息:
使用未声明的类型'type'
答案 0 :(得分:1)
如果要调用泛型类型结构,请使用:
private void Button_Click(object sender, RoutedEventArgs e)
{
//PopupWindow
}
或者如果你想解码简单的结构,那么:
do {
let model = try JSONDecoder().decode(JSON<T>.self, from: dataFromAPI)
} catch let message {
print("JSON serialization error:" + "\(message)")
}