是否有工具来剥离定义的交换机下的代码?

时间:2012-03-26 17:43:35

标签: c++ c

我有一大块C和C ++代码。我必须将源发布给两个不同的客户。我不希望他们看到其他人的特征。所以,我打算使用开关进行编译。什么时候提交代码,我想删除几行代码。我知道我可以编写一个脚本来完成它,但我想知道是否有任何工具可以完成这项工作。

#ifdef CUSTOMER_1
Code for Customer 1
#else //Customer_2
Code for Customer 2
#endif

对于客户2,我希望删除#ifdef#else下的代码。我想删除第#endif行。有没有可以随时使用的工具?

3 个答案:

答案 0 :(得分:4)

有一个名为unifdef的实用程序,它专为此目的而设计。

答案 1 :(得分:2)

为什么不将客户特定位放在 customers.h 文件中并包含该文件?您为不同的客户提供不同的 customers.h 。你还没有完全解释这个问题,但首先嗤之以鼻,源代码的静态过滤是一个问题。

答案 2 :(得分:0)

C预处理器当然可以为您执行此操作,但它也将处理任何其他指令。我认为你最好用专门的脚本来做这件事