我该如何执行以下代码?
func setupFetchResultController<AnyNSManagedObject>(entityToFetch: AnyNSManagedObject) {
let fetchRequest:NSFetchRequest<entityToFetch> = entityToFetch.fetchRequest()
}
它会产生错误并显示错误消息:
使用未声明的类型'entityToFetch'
当我尝试了以下代码时
func setupFetchResultController<AnyNSManagedObject>(entityToFetch: AnyNSManagedObject) {
let fetchRequest:NSFetchRequest<AnyNSManagedObject> = AnyNSManagedObject.fetchRequest()
}
它还产生了一条错误消息并显示错误消息:
类型“ AnyNSManagedObject”不符合协议“ NSFetchRequestResult”
答案 0 :(得分:1)
使用泛型
time = distance / speed
或
func setupFetchResultController<T: NSManagedObject>(entityToFetch: T) {
let fetchRequest = T.fetchRequest()
}