当尝试扩展非传统的“类型”(如(Int, Int)或)时,我看到此错误Any:
(Int, Int)
Any
非标称类型“任何”均不能扩展
那么,什么使类型非标称呢?什么是一个非标称型等之间的差异Any或(Int)和常规标称型样Int?
(Int)
Int
这有点猜测(编辑:这是错误的,请看),但是这里是:
Any是协议,而不是实际类型。“标称”一词意味着命名(基于词的词根)。
所以您不能扩展,Any因为它是一个协议,而不是实际的类型,并且您不能扩展,(Int, Int)因为它只是一个元组文字,也不是您可以通过名称指定的实际类型。
当然,您可以扩展协议。Any不是协议,而是(令人震惊的)非标称类型,这是另外一些东西。