我需要初始化一个变量以连接到 Swift 中的 SQLite 数据库。我正在使用SQLite.swift库,需要使用以下行连接到数据库:
let db = try Connection("path/to/db.sqlite3")
然而,这条线本身是行不通的,因为它需要被一个 try/catch 块包围。除非在方法或函数中定义,否则 Try/catch 块将不起作用,所以现在我们有了
public func connectToDB() {
do {
let path = NSSearchPathForDirectoriesInDomains(
.DocumentDirectory, .UserDomainMask, true
).first!
let db = try Connection("\(path)/db.sqlite3")
}
catch {
print("error connecting to database")
}
}
但是,这不允许我从同一文件中的其他方法访问变量,这是我需要做的。全局 let 声明也需要初始化,这意味着它不能全局设置。如何从类中的其他方法访问此对象?