Ron*_*ayo 2 xcode servicestack swift
嗨,所以我的朋友给了我客户的现有项目,它有太多的错误.我一直在调试应用程序,只是浏览这行代码
class func saveFile(#data: NSData, filename: String, directory: NSSearchPathDirectory = .DocumentDirectory) -> Bool {
var file = filePath(filename, directory: directory)
return data.writeToFile(file, atomically: true)
}
Run Code Online (Sandbox Code Playgroud)
注意到了#?到底究竟是#什么?
这也是功能的截图#.
附加信息:我认为他们使用了这个库服务栈,我认为它只适用于xamarin.
在Swift 1中,#用于为函数参数提供相同的外部和内部名称.例如,函数定义:
func save(#data: Float) {
print(data)
}
Run Code Online (Sandbox Code Playgroud)
相当于:
func save(data data: Float) {
print(data)
}
Run Code Online (Sandbox Code Playgroud)
这在Swift 2中被删除,必须明确声明外部名称.
外部参数名称用于使函数调用更具惯用性.例如:
func send(sender: String, receiver: String) {
print("Sending from \(sender) to \(receiver)")
}
Run Code Online (Sandbox Code Playgroud)
被称为这样:
send("Cupertino", "New York")
Run Code Online (Sandbox Code Playgroud)
通过添加外部参数,您可以在不更改正文的情况下使该函数调用更加惯用:
func send(from sender: String, to receiver: String) {
print("Sending from \(sender) to \(receiver)")
}
Run Code Online (Sandbox Code Playgroud)
使代码更具可读性:
send(from: "Cupertino", to: "New York")
Run Code Online (Sandbox Code Playgroud)
Apple文档中的更多信息.
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |