我正在用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
...
};