太多包括在我的程序中

时间:2015-12-14 03:05:26

标签: c++ scope header

所以这里的问题我有13个包含文件在我的程序中(我愿意包含更多!)但问题是编译器忽略了最后一个包含,我可以这样说,因为我在其中两个之间切换错误将始终为行号13的最后留置权

这里是包含文件

#include <iostream>
#include <fstream>
#include <cstdlib>
#include <iomanip>
#include <vector> //for dynamic tables
#include <string>
#include <conio.h>//used for the function getch
#include "checkPassword.hpp"
#include "buffervoider.hpp"
#include "checktyping.hpp"
#include "extractline.hpp"
#include "getchoic.hpp"
#include "tableidentify.hpp"

这里的错误将是:

|错误:&#39; tableidentify&#39;未在此范围中声明|

但如果我在#include&#34; getchoic.hpp&#34;之间切换。和#include&#34; tableidentify.hpp&#34; 错误将是

|错误:&#39; getchoic&#39;未在此范围中声明|

我的所有标题都包含警卫

那么如何解决这个问题呢?

3 个答案:

答案 0 :(得分:0)

如果这些hpp文件属于您,则删除其中一个包含另一个hpp文件的#include,以便tableidentify.hpp#includes getchoic或反之,删除其中一个包含其他

答案 1 :(得分:-1)

你可能宝贝有圆形包含:一个文件包含另一个文件,其中包括第一个文件。

答案 2 :(得分:-1)

我假设其中一些标题是用户定义的(即你制作它们)。如果是这样,请尝试将所有用户定义的标头包含语句组合在另一个标头中,然后包含该标题。