在visual studio中使用编译器指令让一个项目为不同产品生成不同版本(或为不同平台生成不同版本)...

可能我们的一个项目(项目是指vs中的项目,即一个工程)会用于多个产品(或部署在多个平台),这时我们可以在解决方案中新建一个解决方案配置,来管理针对不同产品(或不同平台的生成配置),可以参见http://chinazhangsheng.spaces.live.com/blog/cns!AA19ACBAE981AA43!1589.entry?&_c02_vws=1一文。

可能针对不同的产品(或不同的平台),项目中的某些代码会不相同,那要怎样来生成不同的版本呢,如果针对每个版本保存一份源代码,浪费空间不说,上面我们新建的解决方案配置也没多大用处了。有人会说,出现这种情况表明重构的时候到了,这也是一个解决办法,不过有时候不同版本就一两句话的差别,怕是没必要,而且有的地方重构的思想会跟整个解决方案的思想相违背。还有一种办法就是使用编译器指令来生成不同版本。主要是使用#if 以及 #else、#elif、#endif这几个指令。如:

#if DEBUG

Console.WriteLine("Debug version");

#endif

为了能形象区分我们的版本,很多时候我们需要自定义添加编译符号(上例中的“DEBUG”就是条件编译符号)。条件编译符号的设置位置是:项目属性》生成》条件编译符号

如果我们把条件编译符号设为:“AAA”,则上例可以写为

#if AAA

Console.WriteLine("Debug version");

#endif

这样,我们就可以用编译器指令来让不同的解决方案配置编译不同的代码块了

转载于:https://www.cnblogs.com/tendzzss/archive/2010/09/09/1848185.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值