为了账号安全,请及时绑定邮箱和手机立即绑定

在Math.h中可以不用声明class Time ,改用include"Time.h",这样可以吗?

在Math.h中可以不用声明class Time ,改用include"Time.h",这样可以吗?

正在回答

7 回答

我也在想,大概是因为Time.h和Match.h两个文件相互include了.然后在展开头文件的那一步就会死循环,所以无法编译。

0 回复 有任何疑惑可以回复我~
#1

飞沉隔雪_ 提问者

非常感谢!
2017-09-14 回复 有任何疑惑可以回复我~

不可以的,在match.h中包含time.h就相互include了,但是在matchcpp中需要include match.h和time.h,真是找了好久的错误所在

0 回复 有任何疑惑可以回复我~

我也在想,大概是因为Time.h和Match.h两个文件相互include了.然后在展开头文件的那一步就会死循环,所以无法编译

0 回复 有任何疑惑可以回复我~

我也在想,大概是因为Time.h和Match.h两个文件相互include了.然后在展开头文件的那一步就会死循环,所以无法编译。

0 回复 有任何疑惑可以回复我~

这个问题我也不太懂,确实这里包含Time头文件就直接报错,而定义Time类的时候一定要包含Match头文件,求助大神指点一下

0 回复 有任何疑惑可以回复我~
#1

Uchiha_Obito

我也在想,大概是因为Time.h和Match.h两个文件相互include了.然后在展开头文件的那一步就会死循环,所以无法编译。
2017-08-21 回复 有任何疑惑可以回复我~

不可以不信你试试

0 回复 有任何疑惑可以回复我~

我觉得是不可以的。class Time是告诉在这个地方说我有Time,但是Time里面不一定现在就要定义什么的就可以编译通过,而#include "Time.h"是编译器在编译过程中马上定位到Time.h,里面必须是要事先都定义好,否则编译不过。(菜鸡的看法,欢迎指正



1 回复 有任何疑惑可以回复我~
#1

闪来闪去的闪电侠

我也在想,大概是因为Time.h和Match.h两个文件相互include了.然后在展开头文件的那一步就会死循环,所以无法编译。
2017-11-18 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之模板篇
  • 参与学习       91156    人
  • 解答问题       318    个

本C++教程力求即学即会,所有知识以实践方式讲解到操作层面

进入课程

在Math.h中可以不用声明class Time ,改用include"Time.h",这样可以吗?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信