1
所以基本上我有一個名爲型號父類具有以下功能從父類的子類類型的返回對象自動
它的偉大工程,但這裏的東西。我有模型的幾個子類,如「學校」,「人物」等。對於每個子類我必須做這樣的事情
static func all(complete: @escaping ([School]) -> Void) {
super.allModels { (models) in
complete(models as! [School])
}
}
它所做的就是調用該方法並將結果轉換到其自己的類型。每個子類的每種方法都必須這樣做,這真的很煩人。有沒有辦法從父類自動執行此操作?所以調用School.all()
將調用Model.all()
,但返回一個學校,而Person.all()
也會調用Model.all()
,但返回一個人。
使用你的代碼中,我得到以下錯誤:通用參數「T」不能推斷 – rmaes4
嘗試使用此代碼來調用它:在0School.allModels {(學校)在學校{ 打印學校(school.name ) } } – rmaes4
如果我添加靜態func allModels那麼該錯誤消失,但我得到一個新的。 「類型模型的值沒有成員名稱」 –
rmaes4