-1

我已经用 C 语言构建了一个库,但目前它非常庞大,并且有许多用于不同建议的函数,例如:文件操作、数学函数等。

我想做的是将这个库拆分为所有不同的建议,但如果用户想要使用 all 可以一次调用它(如果可能的话,idk)。

我的库名为 feg_tools。所以目前使用它我这样做:

#include "feg_tools.h"

我想要一些我只称之为我需要的东西:

#include "feg_tools/mathematics_functions.h"
#include "feg_tools/file_manipulation.h"

或者如果我需要一切:

#include "feg_tools"

我也不知道如何构建这样的 Makefile。

4

1 回答 1

1

您需要创建一个名为feg_tools的文件夹,并将您的所有库.h(mathematics_functions.h,file_manipulation.h,...)放在那里,然后您可以按照您在问题中所说的那样使用它们。

为了包含孔库,您需要一个包含库所有#include指令的标题,这可能是,

feg_tools.h

#include "feg_tools/mathematics_functions.h"
#include "feg_tools/file_manipulation.h"
...

这里 feg_tools.h 在feg_tools文件夹之外。

我不知道您是否这样做,机器人您还应该在每个.h文件中插入内容到#ifdef指令中,如下所示:

#ifdef FEG_TOOLS_XXX
//put here the content 
#endif //FEG_TOOLS_XXX

这是为了避免头文件的循环依赖。

于 2018-03-20T20:26:15.850 回答