预处理能自动判断是WPF还是winform,还是也得手动更改#define 内容?
你可以使用 #if DEBUG .... #else .... #endif 来区别调试开发和发布的不同代码。因为调试是几乎不使用 try...catch 机制的,需要尽可能早地让vs 调试器捕获异常。而 Release 版本一定是在最外层处理掉抛出的异常、而不让应用崩溃的。 如果有同一个类库,需要分别为 Silverlight、WPF、Winform、ASP.NE等等使用,但是每一个环境都有一点点差别,需要使用不同的实现方法,这就需要条件编译。 如果你需要为不同目标编译不同代码,例如给不同团队稍有区别,或者你不同的调试级别下需要屏蔽不同的代码,等等,可以自定义条件编译变量(在工程的属性窗口设置)。 条件编译可以使得目标代码“很干净”,并不需要在代码中执行什么 if 判断代码。因为根本不编译进目标代码中。
7,765
社区成员
63,203
社区内容
加载中
试试用AI创作助手写篇文章吧