关于闭包的疑惑

昨天按照书上例子,按照格式写闭包,但是会报错 在这篇文章可以看到具体 has no title attribute.
今天看类这个文章 http://my.oschina.net/lanrenbar/blog/467768
原来还能用闭包来给变量赋值,这里会报错应该是不值得变量的具体类型,

var sortB = {i1,i2 in return i1 > i2}//这里会报错,因为不值得变量到底是一个闭包函数还是只是存储闭包函数返回值的变量

func sortF(sort:(Int,Int)->Bool)
{
    print("aaaa")
}
sortF({i1,i2 in return i1 > i2})//这里不会报错,因为在sortF函数中已经指定了类型

var sortC:(Int,Int)->Bool = {i1,i2 in return i1 > i2}//这里不会报错,因为变量已经指定了类型

在用变量存储闭包函数的时候,如果要简写,要写好类型

标签: swift, 闭包

添加新评论