我有一个(96文件)代码的以下两个变体,它们之间的唯一区别在括号中:
如果我每次更改软件中的任何内容,我希望此更改在上述两种代码变体中保持一致。
在Git(Hub)中,我应该:
以下是一些相关的问题,但不是我想要的问题。我已经写了为什么我还没有吞下他们的答案:
答案 0 :(得分:0)
很长一段时间以来我做了任何Fortran 但是如果你可以在C中使用基于参数化的宏,你最好的选择就是有一个类似
的条件宏#define DECLARE_HIGH_PRECISION(Name, Val, Exp) \
#ifdef QUAD_PREC \
REAL*8 %Name% = %Val%Q%Exp% \
#else \
REAL*4 %Name% = %Val%D%Exp% \
#endif
声明并初始化您的值DECLARE_HIGH_PRECISION(Fred, 23, -3)
您可能还需要一个不需要名称的内联值的宏,以便能够执行Fred = Fred * HIGH_PRECISION(43, +6)
等操作。 / p>