重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1、函数重载的概念
站在用户的角度思考问题,与客户深入沟通,找到三台网站设计与三台网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站建设、做网站、企业官网、英文网站、手机端网站、网站推广、域名注册、网站空间、企业邮箱。业务覆盖三台地区。
函数的重载指的是多个函数享有相同的名字都是有不同的参数或返回值类型不同,它们互相成为重载关系,
2、与其它语言的不同
Swift函数的参数类型包含了参数列表类型和返回值类型,例如(Double,Double)->Double 是由2个Double类型参数列表和Double类型的返回值类型构成,也就是说Swift中函数名相同,参数列表不同或者返回值类型不同的函数都可以构成重载,而在C++或者JAVA中,函数的重载只是与参数列表有关系,与返回值没有关系
3、示例
func receive(i : Int){
println("接受一个Int类型的参数\(i)")
}
func receive(d : Double){
println("接受一个Double类型的参数\(i)")
}
func receive(x : Int,y : Int){
println("接受两个Int类型的参数x=\(x),y=\(y)")
}
func receive(i : Int) -> Int{
println("接受一个Int类型的参数\(i),返回值为Int类型")
return i * i
}
let a1 : Int = receive(10)
let a2 : () = receive(10)
let a3 :Void = receive(10)
let a4 = receive(10.0)
let a5:() = receive(10,20)
外部参数名不同的时候也可以重载
示例代码如下:
func receive(x : Int, y : Int) {
println(接收有个Int类型的参数:x=\(x),y=\(y))
}
func receive(X x : Int, Y y : Int) {
println(接收有个Int类型的参数:x=\(x),y=\(y))
}
let a1 :() = receive(10,20)
let a2 :() = receive(X:10,Y:20)