1.函数
==代码段上的可执行指令序列==
typedef enum{
全局函数,
成员函数
}函数
2.方法
==是类型的成员函数==
可以用来定义
- class
- struct
- enum
typedef enum{
实例方法,
类型方法(静态方法)
}方法
3.类型方法
其中:类型方法的格式:
static func{
...
}
==类型方法不可以访问实例属性和实例方法==
4.方法参数
4.1.func 默认格式
func(参数1,参数2...)[->返回值]{}
4.2.参数的完整形式:
[外部名] 内部名:数据类型
==第一个参数名可以省略==
==参数定义时格式:_ data, 可以忽略参数名==
4.3.提供默认值的参数
func(参数名:参数类型 = 默认值){}
4.4.常量参数和变量参数
- 常量参数:
func add(data1:Int,data2:Int)->Int{
return data1+data2
}
- 变量参数
func add( var data1:Int,var data2:Int)->Int{
data1 += 1
data2 += 1
return data1+data2
}
4.5.可变数目参数(实质是是个数组)
func add(data:Int...)->Int{
var sum = 0
for item in data {
sum += item
}
return sum
}
var y = add(11,12,13)
4.6.Inout 参数
==可以改变外部实参数==
func add(inout data:Int)->Int{
...
}
var data
myObject.add(&data)
==注意:是inout,如果写成Inout,就是外部参数名了==
4.7.多个返回值(Tuple 元组 )
func(参数1,参数2...)[->(返回值1,返回值2)]{}
==元组:可以理解为没有名字的属性名==
let r = xxxxx
print("\(r.返回1),\(r.返回2)")