c# - 是否可以禁用 C# 中的函数

标签 c# function

在我的程序中,我有创建日志的功能。在函数内部,我检查变量是否为真以继续其工作。

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/

相关文章:

C#调用接口(interface)方法非虚实现

c# - 去掉List中count和capacity的距离

c# - TableAdapter 做奔腾数学

c# - 具有多个接口(interface)的可靠 Actor ?

windows - Windows播放声音的最低级别的功能是什么?

ios - 保持函数之间的定义

c# - 跨多种类型的 ElasticSearch NEST 查询

c++ - 在 C++ 中返回二维数组对角线元素之和的函数

C++ 重载决议总是求助于别名 arg。超过其他人作为arg。对所有人有效

R函数删除列中的前4个字符?