ReSharper 2025.3 Help

代码检查:具有默认值的冗余参数

此检查会识别代码中调用具有 可选参数的方法,并使用与这些参数的默认值相同的值的地方。

以下是一个示例:

void Foo(int required, [Optional] bool optionalBool, int optionalInt = 10) { // do something } void Test() { Foo(10, false, 10); //Warning: Redundant argument with default value }

上述调用为两个可选参数 optionalBooloptionalInt 使用了与默认值相同的值,这有些令人困惑:该调用是否应该使用在 Foo() 的声明中指定的 默认值 ,还是相反,它应该使用 调用方指定的值 ,而不考虑默认值是什么?

如果是前者,那么具有默认值的可选参数可以且应该被移除,因为默认值可能会在声明中发生更改。 否则,您可以通过注释 抑制此检查:

// ReSharper disable RedundantArgumentDefaultValue
最后修改日期: 2025年 12月 8日