首页 > 解决方案 > 发送ref参数时如何返回out参数?

问题描述

我正在发送一个 ref 参数;想要返回一个输出参数。我是否还需要与 ref 方法一起创建另一个方法?

这是我正在处理的一些上下文:“创建一个内部静态 void 方法,该方法接收摄氏度作为 ref 参数并返回华氏度作为输出参数。此方法中没有输入或输出。”

internal static void(ref int c, out int f){
f = c + 32;
return f;
} 

标签: c#methodsreturn-typerefout

解决方案


您的方法有两个问题 - 您缺少方法名称,并且当您的方法签名指定void返回类型时,您正在返回一个值。

第三件事虽然不是问题,但将 c 声明为 ref 参数是没有意义的,因为它没有在您的方法中被更改。

internal static void convertCelciusToFahrenheit (ref int c, out int f){
    f = c + 32;
}

您可能还想检查您的数学以将摄氏度转换为华氏度


推荐阅读