找不到头文件

realheat 2010-03-31 09:35:04
文件结构如下:
test
Source
src
Cat.cpp
main.cpp
Headers
include
Cat.h

这是第一条出错信息:
\test\src\Cat.cpp|1|Cat.h: No such file or directory|

为什么呢?我已经在Cat.cpp中加了#include"Cat.h"了啊?
...全文
135 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
realheat 2010-03-31
  • 打赏
  • 举报
回复
呃,我知道哪里错了。
原来文件结构根本不是我想的那样。。。
根本就不存在source和headers这两个文件夹,这是软件里显示出来方便管理的
谢谢大家了
「已注销」 2010-03-31
  • 打赏
  • 举报
回复
up , up , up .
太乙 2010-03-31
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 realheat 的回复:]

晕,网络太差了,不小心发了两次,不是故意的。。。
回1楼:
放在main.cpp包下也不行
回2楼:
绝对路径也不行啊
[/Quote]
试试相对路径:

../Header/include/Cat.h
蜘蛛上吊 2010-03-31
  • 打赏
  • 举报
回复
编译的时候include -I 加上搜索路径吧,并且头文件应该用双引号#include "FileName",不能用#include <FileName>

你可以吧所有文件放在一个目录下,在程序里用这种方式包含头文件#include “Cat.h”,这样肯定是能找到的。
yuzl32 2010-03-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 realheat 的回复:]
test
├─Source
│┄┄├─src
│┄┄┄┄├Cat.cpp
├─main.cpp
├─Headers
│┄┄├─include
┄┄┄┄┄├Cat.h
晕,空格没掉了。结构如上
[/Quote]
原因:Cat.cpp中#include "Cat.h"代表在Cat.cpp所在的目录下查找Cat.h,但是你的Cat.h并不在里面。
更改:#include "全路径的方式/或相对路径的方式"
bsr2009 2010-03-31
  • 打赏
  • 举报
回复
同一个目录,或者H的目录被指定为系统的,才可以不用路径。
赵4老师 2010-03-31
  • 打赏
  • 举报
回复
根据你上面的目录结构,应该改成这样
#include "../../Headers/include/Cat.h"
不过还是劝楼主把目录结构改简单点吧。
ZXW0521 2010-03-31
  • 打赏
  • 举报
回复
全放在一个目录里是可以的吧,,
realheat 2010-03-31
  • 打赏
  • 举报
回复
晕,网络太差了,不小心发了两次,不是故意的。。。
回1楼:
放在main.cpp包下也不行
回2楼:
绝对路径也不行啊
realheat 2010-03-31
  • 打赏
  • 举报
回复
test
├─Source
│┄┄├─src
│┄┄┄┄├Cat.cpp
├─main.cpp
├─Headers
│┄┄├─include
┄┄┄┄┄├Cat.h
晕,空格没掉了。结构如上
realheat 2010-03-31
  • 打赏
  • 举报
回复
test
├─Source
│┄┄├─src
│┄┄┄┄├Cat.cpp
├─main.cpp
├─Headers
│┄┄├─include
┄┄┄┄┄├Cat.h
晕,空格没掉了。结构如上
太乙 2010-03-31
  • 打赏
  • 举报
回复
要么写绝对路径,要么写相对路径

相对路径:

#include "../Headers/Cat.h"
linyongzuo 2010-03-31
  • 打赏
  • 举报
回复
main.cpp包下看看

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧