C# - 无法使用 Override 方法传出

C# - Can't pass Out with an Override method

我有一个与下面示例非常相似的方法,它不会让我 out outItem

    public override bool myMethod(string item, out string outItem)
    {
        outItem = "";
        return true;
    }

一直报以下错误:

"no suitable method found to override"

如果我删除 override,错误就会消失。我该如何解决这个问题?

基础 class 中的方法似乎没有将该参数标记为 out。您需要符合 base class 的签名。如果您可以更改基 class 以将方法标记为 out,那么您也可以在派生类型上将其标记为这样。如果不能,那么您将无法覆盖该方法,您将不得不创建一个新方法。

听起来 myMethod 的基本 class 签名没有使用 out 作为第二个参数。您不能只添加它,因为它会更改方法签名。如果您可以控制基础 class,则可以添加它,但如果没有,则需要删除覆盖。