我如何传递附加参数到谓词函数?

pen*_*ake 6 c# sorting parameters predicate parameter-passing

我可以将其他参数传递给谓词函数吗?

我实际上在排序过程中需要它。

public void Sort(
    Comparison<T> comparison
)
Run Code Online (Sandbox Code Playgroud)

我想以Comparison这种形式使用谓词的地方:

public delegate int Comparison<T>(
    T x,
    T y,
    object extraParameter
)
Run Code Online (Sandbox Code Playgroud)

这可能吗?

Tim*_*son 5

不,但是您可以这样做:

public Comparison<T> MakeComparison<T>(object extraParameter)
{
    return
        delegate(T x, T y) 
        {
            // do comparison with x, y and extraParameter
        }
}
Run Code Online (Sandbox Code Playgroud)