C#if指令
|
我可以编写代码将变量设置为true还是false,具体取决于我按下的按钮吗?请参见下面的示例。
如果没有,还有什么其他方法可以达到类似的效果?我已经使用指令标记了不同模式的代码,只希望开发人员可以选择切换模式,但是现在我希望为用户提供在模式之间切换的选项。模式的选择仅在程序开始时给出,并且不允许用户切换模式。要切换模式,他只能再次重新启动程序。
如果无法使用指令,最快的方法是什么? (注意:这些语句都是围绕解决方案的)
在我希望实现的pseduocode中:
void button_click(...){
if(!CONDITION)
CONDITION = true;
else
CONDITION = false;
}
...
#if CONDITION
//mode X with addtional steps
#endif
没有找到相关结果
已邀请:
7 个回复
粱委教
粟痢凰副
在编译时执行。您需要在编译时决定如何构建代码,并在项目的某个位置(例如在项目的属性中)或在源文件的顶部,将
设置为给定构建所需的任何值。 如果确实需要在运行时做出决定,那么您需要包括所有可能的代码路径,并在运行时决定采用哪一条。
笛驮型迸
盟犯涩沟都
久坡
镀建啼
指令是一个预处理程序选项,编译代码后将没有任何意义,因此您无法在编译后使用它们来控制程序流。 至于其他选项,您应该能够轻松地将它们转换为类级变量,但是,不利的是,您的代码中会出现“ 5”个语句,这最终可能会给管理带来麻烦。 另一个对OOP友好的选项是实施State模式。您可以将每个“条件”的行为封装到自己的状态中,并在模式中在它们之间进行切换。对于两个州,这可能是过大的(很可能是)。 另一个参考:http://www.dofactory.com/Patterns/PatternState.aspx
仇聘发栖
是在编译时确定的,您想在运行时进行更改。是不可能的。