Out 使用未分配的变量,尽管我给它分配了一个默认值

Out 使用未分配的变量,尽管我给它分配了一个默认值,out,Out,虽然我为out变量指定了一个默认值,但在控制台中尝试写入时仍然会抛出一个错误。“使用未指定变量”。x和y不是都指向同一个内存位置吗?请解释……在您尝试打印x时,尚未分配x。直到下一行才指定x。交换两行的顺序。@但是我已经把y的值分配给了right?x和y不是都指向同一个内存位置吗?y不是函数A的一部分。想象一下,如果有人这样做:intz;A(out z)。现在,在写入之前,您正在读取x,并且从未分配z。如果将一个参数声明为out,则假定还没有人给它赋值。请参阅:“在函数成员中,输出参数最初被认为

虽然我为out变量指定了一个默认值,但在控制台中尝试写入时仍然会抛出一个错误。“使用未指定变量”。x和y不是都指向同一个内存位置吗?请解释……

在您尝试打印x时,尚未分配x。直到下一行才指定x。交换两行的顺序。@但是我已经把y的值分配给了right?x和y不是都指向同一个内存位置吗?
y
不是函数
A
的一部分。想象一下,如果有人这样做:
intz;A(out z)。现在,在写入之前,您正在读取
x
,并且从未分配
z
。如果将一个参数声明为
out
,则假定还没有人给它赋值。请参阅:“在函数成员中,输出参数最初被认为是未赋值的。”@RaymondChen-是的,我理解了,非常感谢。。。
using System;

namespace Examples
{
   public class HelloWorld
   {
      public static void Main(string[] args)
      {
      int y=5;
      A(out y);
         }
      public static void A(out int x)
      {
      Console.WriteLine(x);
      x=1;
      }
   } 
}