【发布时间】:2017-10-27 08:36:03
【问题描述】:
我正在编写连接到数据库的应用程序。我需要能够使用来自许多类的数据库连接。
class Database
{
auto MyConnection = new Connection("..."); // create connection
void calc()
{
MyConnection.query("..."); // use it
}
}
但我需要从每个班级访问MyConnection?我应该做Database 类static 吗?或者也许我应该使用单例模式?还是将MyConnection 设为shared?
例如,配置呢?例如shared 是个好主意吗?
或者例如,我可以在 main 之前全局声明连接语句吗?喜欢:
MySQLPool MyConnection;
void main()
{
//...
}
然后从 static this() { } 或从 DB 类启动 MyConnection?
【问题讨论】:
-
为什么不传递
Database呢?看起来工作量很大,但最终你的代码会变得更好。
标签: database class singleton d static-classes