参考 C# 中的 int 问题
简而言之,我使用 while 循环来重复一个方法,每次运行该方法时,int“i”都会增加 1。尽管我在调用“NumberUp”方法时遇到问题。错误输出如下。
主要方法:
while (true)
{
NumberUp(0);
}
NumberUp 方法:
public static void NumberUp(ref int i)
{
i++;
System.Console.WriteLine(i);
}
我不断收到以下错误:
<块引用>“ConsoleApplication2.Program.NumberUp(ref int)”的最佳重载方法匹配有一些无效参数
Simply put, I am using a while loop to repeat a method, and each time the method is run the int "i" will increase by 1. Although I am having trouble calling the "NumberUp" method. error output is below.
Main method:
while (true)
{
NumberUp(0);
}
NumberUp Method:
public static void NumberUp(ref int i)
{
i++;
System.Console.WriteLine(i);
}
I keep getting the following error:
The best overloaded method match for 'ConsoleApplication2.Program.NumberUp(ref int)' has some invalid arguments
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
ref 参数需要通过 ref 传递,并且需要一个变量:
A ref parameter needs to be passed by ref and needs a variable:
您必须将
0
作为包含0
的变量中的引用传递,例如:在 MSDN 上阅读此处,了解有关 ref 关键字。
You have to pass
0
as a reference in a variable containing0
, for instance:Read here at MSDN for more information on the ref keyword.
参考
ref
要调用采用
ref
参数的方法,您需要传递一个变量,并使用ref
关键字:这会将引用传递给
x
变量,允许NumberUp
方法将新值放入该变量中。To call a method that takes a
ref
parameter, you need to pass a variable, and use theref
keyword:This passes a reference to the
x
variable, allowing theNumberUp
method to put a new value into the variable.Ref 用于传递变量作为引用。但是您传递的不是变量,而是值。
应该做到这一点。
Ref is used to pass a variable as a reference. But you are not passing a variable, you are passing a value.
Should do the trick.