swift 中的 object().func 和 object.func 有什么区别
What is the difference between object().func and object.func in swift
我是 swift 的新手,我想知道 geoCoder() :
之间是否有区别
var geoCoder:CLGeocoder = CLGeocoder()
geoCoder().reverseGeocodeLocation(newCoordinate, completionHandler: { (<#[CLPlacemark]?#>, <#NSError?#>) -> Void in
<#code#>
})
和 geroCoder:
var geoCoder:CLGeocoder = CLGeocoder()
geoCoder.reverseGeocodeLocation(newCoordinate, completionHandler: { (<#[CLPlacemark]?#>, <#NSError?#>) -> Void in
<#code#>
})
提前致谢
是的,有区别。第一个不会编译(即使你正确填写占位符),第二个会。
你不能说 geoCoder()
因为 geoCoder
不是函数。
(在 C++ 中,我们可以重载 ()
运算符,使不是函数的东西表现得像函数。Swift 不允许这样做,因此您只能将 ()
在真正起作用的东西之后。)
我是 swift 的新手,我想知道 geoCoder() :
之间是否有区别 var geoCoder:CLGeocoder = CLGeocoder()
geoCoder().reverseGeocodeLocation(newCoordinate, completionHandler: { (<#[CLPlacemark]?#>, <#NSError?#>) -> Void in
<#code#>
})
和 geroCoder:
var geoCoder:CLGeocoder = CLGeocoder()
geoCoder.reverseGeocodeLocation(newCoordinate, completionHandler: { (<#[CLPlacemark]?#>, <#NSError?#>) -> Void in
<#code#>
})
提前致谢
是的,有区别。第一个不会编译(即使你正确填写占位符),第二个会。
你不能说 geoCoder()
因为 geoCoder
不是函数。
(在 C++ 中,我们可以重载 ()
运算符,使不是函数的东西表现得像函数。Swift 不允许这样做,因此您只能将 ()
在真正起作用的东西之后。)