问题
新建了一个QT测试项目,想着直接使用正式项目中的一些文件,这样一旦发现源码有问题,可以随时把正式项目中的一并修改了,不用再改第二次(前提是保证在测试项目中修改完文件以后,正式项目中依赖于该文件的地方不受太大影响)。我的操作是,直接在新的测试项目中右键—添加现有文件,并选择正式项目中的对应文件,添加即可。但是在编译的时候,提示错误,如下图所示。
我新建的项目是TestTableView项目,正式项目是DLModel项目,现在是从DLModel项目中添加了mysql.h和mysql.cpp,编译的提示找不到DataInfo这个类,但是我在mysql.h文件中已经添加了头文件#include “../Beans/datainfo.h”,而且路径是没问题的,按理说应该可以找到的,如下图所示。
这个地方忽略了一个问题,在物理路径中是可以找到Datainfo这个类文件的,但是TestTableView项目它是没有关于Datainfo这个类文件记录的,也就是说在它的记忆库中,搜索不到这个文件,所以就会提示错误。也就是说,你除了把文件放在某个地方以外,还得告诉项目这个文件放在哪了。
解决办法
方法很简单,只需要把Datainfo这个类相关的文件,都在通过TestTableView项目右键添加进来即可,如图所示,这样在项目文件.pro中就可以找到关于这些类的记录了,再重新编译就没问题了。