我有一段代码,可以在不同头文件中定义的不同数据集上使用相同的函数。这些头文件可能具有不同定义的相同变量。
当我调用代码时,我可以将参数传递给代码以指定要在哪个数据集上执行该功能。
我想做的就是将此参数传递给代码,如果参数等于 X,则我使用 headerX,或者如果参数等于 Y,则使用 headerY。
据我了解,头文件必须包含在 MAIN 之前。是否可以在 MAIN 之后包含头文件,以便我可以编写 if/else 语句来确定我正在调用哪个头文件?
如果我做不到,请帮我解决这个问题。
最佳答案
您可以使用#ifdef - block 来确定在编译之前要使用哪个数据集。但如果您想要不同的数据集,则需要通过更改该定义来更改(重新编译)可执行文件。
否则您需要在 C++ 中进行编译,因为直接 C 不支持重载函数。
关于c - 使用 C,一段代码,多个 header if/else?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11676889/