在我的程序中,我有创建日志的功能。在函数内部,我检查变量是否为真以继续其工作。
private void log(string text)
{
if(LOGGING_ENABLED)
logtextbox.Text = text;
}
是否有任何方法可以在外部禁用函数,而不在函数内部或参数中使用任何 if
,从而禁用程序中所有出现的函数。
最佳答案
您可以使用 ConditionalAttribute。对具有此属性的方法的调用将根据是否定义条件进行编译。例如:
[Conditional("DEBUG")]
private void log(string text){
logtextbox.Text = text;
}
对该方法的调用将显示在 Debug模式下,但不会出现在 Release模式下的代码中,因为 DEBUG 条件仅在 Debug模式下定义。
编辑:为了回答您的一些问题,我建议您查看 API Reference page .它有一些非常简单的示例和解释,说明如何使用该属性及其效果。
关于c# - 是否可以禁用 C# 中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7293166/