循环依赖不可避免

时间:2015-03-23 10:33:33

标签: c++ circular-dependency

我正在用C ++开发一个应用程序。在这个应用程序中,我有两个类:数据库类和用户类。数据库类包含指向用户的指针列表。在本课程中,我需要访问用户的指针,以便在外部文件中保存有关用户的信息。在用户类中,我拥有所有用户的信息。

现在,我想从用户类访问数据库,因为我需要扫描它。我的问题是这样的:数据库类包括用户的类,当我从用户的类中包含数据库时,我得到循环依赖。我该怎么办?

转发声明对我没有帮助,因为我需要使用来自用户和数据库的方法。

这是一个代码示例:

#include "user.h"

class Database{
private:
    std::map<string,User*> userList;
public:
    ....
    methods to use database
    ....
};


#include "database.h" // if I add this I get cirular-dep

class User{
private:
    ...user informations..
public:
    ...
    I need a method here to access to db
    ...
};

0 个答案:

没有答案