头文件包含的问题

时间:2021-12-02 16:49:20
我见了一个文档视图类型的工程,我包含"mainfrm.h"的时候编译器报错说找不到这个文件,可是明明是有的。
高手再讲讲如何包含头文件吧
感觉vc里的包含原则很诡异,比如在a.h文件里用到了另外一个b.h文件里的变量却不需要包含这个头文件,只需要在a.cpp里包含一次就可以了。这是怎么回事呢?期待高手解答。

6 个解决方案

#1


改一下大小写,然后再看看MainFrm.h是否在header files下

#2


vc/mfc框架结构初学时候确实难搞懂
就包含这块没什么诡异的
就是一般的include啊 或许是include嵌套太多 你没弄清楚吧

#3


文件名不是不管大小写么?
嵌套的层次很多,我提到的那个问题是怎么回事呢?

#4


你在哪个地方进行包含的?怎么写的?列出。

#5


把你出错的那个#include, 在位置上,移动一下, 上下移动

多测试几次, 有可能是包含的顺序的问题, 即有的头文件必须先包含

#6


1.移动#include位置;

2.在a.h文件里用到了另外一个b.h文件里的变量却不需要包含这个头文件,只需要在a.cpp里包含一次就可以了。这是怎么回事呢?
===================================================================================
因为在a.cpp里面才用到了b.h里面用到的变量,如过你要在a.h里面引用b.h的变量,同样得在a.h里面 #include "b.h"

#1


改一下大小写,然后再看看MainFrm.h是否在header files下

#2


vc/mfc框架结构初学时候确实难搞懂
就包含这块没什么诡异的
就是一般的include啊 或许是include嵌套太多 你没弄清楚吧

#3


文件名不是不管大小写么?
嵌套的层次很多,我提到的那个问题是怎么回事呢?

#4


你在哪个地方进行包含的?怎么写的?列出。

#5


把你出错的那个#include, 在位置上,移动一下, 上下移动

多测试几次, 有可能是包含的顺序的问题, 即有的头文件必须先包含

#6


1.移动#include位置;

2.在a.h文件里用到了另外一个b.h文件里的变量却不需要包含这个头文件,只需要在a.cpp里包含一次就可以了。这是怎么回事呢?
===================================================================================
因为在a.cpp里面才用到了b.h里面用到的变量,如过你要在a.h里面引用b.h的变量,同样得在a.h里面 #include "b.h"