Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 无法专门化非泛型类型';设置';_Ios_Swift_Nsmanagedobject - Fatal编程技术网

Ios 无法专门化非泛型类型';设置';

Ios 无法专门化非泛型类型';设置';,ios,swift,nsmanagedobject,Ios,Swift,Nsmanagedobject,这是我的NSManagedObject: @objc(Order) class Order: NSManagedObject { @NSManaged var orderItems: Set<OrderItem> //error: Cannot specialize non-generic type 'Set' } 如果将来有人会因为这个讨厌的bug而提出这个问题,那么仅供参考,因为讨论还在评论中进行 是的,Swift中默认的Set类型是泛型的,但是在这种情况下,一个自定

这是我的
NSManagedObject

@objc(Order)
class Order: NSManagedObject {

    @NSManaged var orderItems: Set<OrderItem> //error: Cannot specialize non-generic type 'Set'
}

如果将来有人会因为这个讨厌的bug而提出这个问题,那么仅供参考,因为讨论还在评论中进行

是的,Swift中默认的
Set
类型是泛型的,但是在这种情况下,一个自定义的非泛型
Set
类隐藏了该语言的标准库定义的类

最好总是为类选择不同的名称,以避免名称冲突。但如果需要,您可以始终使用类的完全限定名来引用所需的类


标准语言类可在 Swif.命名空间下使用,而对于其他类,则可以使用该模块的名称,后面跟着一个点和该类的名称(例如,Base.NSCOPE)。

在XCl7.7.1的游乐场中运行良好,您使用的是哪种版本的SWIFT?如何检查Swift的版本?您的项目中没有其他类型的
Set
吗?哦,是的,您太棒了,我有另一种类型的
Set
。你救了我的命;)对不起,我弄错了:
Swift.Set
:)
@NSManaged var orderItem: OrderItem