我有一大块C和C ++代码。我必须将源发布给两个不同的客户。我不希望他们看到其他人的特征。所以,我打算使用开关进行编译。什么时候提交代码,我想删除几行代码。我知道我可以编写一个脚本来完成它,但我想知道是否有任何工具可以完成这项工作。
#ifdef CUSTOMER_1
Code for Customer 1
#else //Customer_2
Code for Customer 2
#endif
对于客户2,我希望删除#ifdef
和#else
下的代码。我想删除第#endif
行。有没有可以随时使用的工具?
答案 0 :(得分:4)
有一个名为unifdef
的实用程序,它专为此目的而设计。
答案 1 :(得分:2)
为什么不将客户特定位放在 customers.h 文件中并包含该文件?您为不同的客户提供不同的 customers.h 。你还没有完全解释这个问题,但首先嗤之以鼻,源代码的静态过滤是一个问题。
答案 2 :(得分:0)
C预处理器当然可以为您执行此操作,但它也将处理任何其他指令。我认为你最好用专门的脚本来做这件事