3

我的代码中有这样的代码

Debug.WriteLine($@"Operation time: {elapsedMilliseconds}ms");

写上标有 [Conditional("DEBUG")] 的行,表示该方法的调用将在 release 中省略。

[Conditional("DEBUG")]
[__DynamicallyInvokable]
public static void WriteLine(string message, string category)
{
  TraceInternal.WriteLine(message, category);
}

但是,它会在 RELEASE 中为该方法的参数调用 string.Format 还是将其删除?

4

1 回答 1

0

在这里找到答案 -使用 ConditionalAttribute 是否也会删除参数计算?

如果定义了符号,则包含调用;否则,调用(包括调用参数的评估)将被省略。

于 2017-05-18T03:12:05.240 回答