在限制泛型参数的类型时,为什么Swift中有两种方法可以做到这一点?
func<T: Type>
func<T>(..) where T: Type
两者之间是否有区别?还是仅保留了旧式语法?
答案 0 :(得分:3)
没有区别,我不知道约定。
就个人而言,最好选择第一个选项,除非它使行的其余部分必须换行,在这种情况下,我将改用第二个选项。
答案 1 :(得分:1)
它们的功能相同。第一个版本是出于遗留原因而存在的,它是Swift 1的保留版本。第二个版本的概念较新,被Apple认为“更合适”。