如何解决标题顺序问题

时间:2020-02-20 14:26:04

标签: c++ header include

我有以下问题: 我的代码依赖于两个外部程序包

如果我编写以下代码:

#include "sofa.h"
#include "Eigen/Dense"

我收到以下错误消息:

/some_path/sofam.h:85:18: error: expected unqualified-id before numeric constant  #define DAYSEC ( 86400.0 ) ... 

以及更多错误行。

但是,如果我更改了include的顺序,它将编译:

#include "Eigen/Dense"
#include "sofa.h"

工作正常。

是什么原因引起的?

我的主要问题是我不知道如何称呼此行为,因此我无法真正有效地对其进行搜索。 不能更改EIGEN或IAU SOFA的任何源代码(因为它们是由其他小组维护的,我们会定期从其网页上对其进行更新)

也不能选择只修复一次,再也不要触摸它。头文件的顺序会自动重新排列为字母顺序,这在每次进行任何更改时都会弄乱所有内容,并且我们定期使用optimize imports算法,该算法也会自动更改包含内容。

0 个答案:

没有答案