【发布时间】:2018-05-29 19:05:58
【问题描述】:
在下面的sn-p中
package ...
var Conn *sql.DB // outer Conn
func Init(user, pwd, dbname string, port int) {
Conn, err := sql.Open("postgres", "... args") // inner Conn
// ..
}
内部Conn 是一个新变量,外部Conn 将保持为空。
通过显式定义 err 并用赋值替换短变量定义,它似乎正确地初始化了外部 Conn 变量
var err error
Conn, err = sql.Open("postgres", "... args") // inner Conn
有没有更简单的方法来指定内部 Conn 不应该是一个作用域变量,而是全局 Conn 变量?我在想package.Conn 之类的东西,但这在包本身内是无效的。
【问题讨论】:
-
没有。但真的有那么长,你想缩短它吗?如果是,那么还要将
err变量设为全局...
标签: go