调用函数时,我不需要标记输入值。当调用类中的方法时,我被要求仅标记 第二个输入。为什么呢?!
func addVals(value1: Int, value2: Int) -> Int{
println(value1)
println(value2)
let value3 = value1 + value2
println(value3)
return value3
}
let val1 = 1
let val2 = 6
// this works with no labels
addVals(val1, val2) // evals to 7
// in a class
class testClass {
func addVals(value1: Int, value2: Int) -> Int{
println(value1)
println(value2)
let value3 = value1 + value2
println(value3)
return value3
}
func callAddVals() -> Int {
let val1 = 35
let val2 = 46
// only second input needs label??!!
return addVals(val1,value2: val2)
}
}
答案 0 :(得分:4)
这样方法名称就像自然语言一样。看看:
mySpriteNode.runAction(dance, withKey:"NodeDance")
参数标签withKey
很清楚该字符串是什么,但请参阅以下版本中的冗余?
mySpriteNode.runAction(action:dance, withKey:"NodeDance")
第一个参数没有必要有标签;它可以在方法名称中包含(更具表现力!)。