为什么Swift函数定义语法冗余?

时间:2014-12-18 07:45:54

标签: objective-c swift go

在C / C ++ / Java / Go中,我们使用,来分隔参数:

(a int, b int)

在Objective C中,我们使用:表示参数:

:(int)a :(int)b

在Swift中,我们必须同时使用:和:

(a:int, b:int)

是否需要冗余?

2 个答案:

答案 0 :(得分:2)

Swift可能有外部和内部参数名称:

(external internal:Int)

如果没有独特的分隔符,会产生很多歧义。

答案 1 :(得分:1)

这不是多余的,只是简单地用替换C :。 (当然还要转换类型和标识符。)