Jac*_*hea 3 c# assignment-operator
给定下面的代码,bar(int y)中的方法参数y是否会被赋予x或1中的值?我意识到它们在逻辑上是等价的,但我想了解赋值操作.
class Program
{
static void Main(string[] args)
{
var foo = new Foo();
var x = 0;
foo.Bar(x = 1);
}
}
public class Foo
{
public void Bar(int y)
{
}
}
Run Code Online (Sandbox Code Playgroud)
参数获取赋值的值.
考虑这样的代码:
int x = 0;
int y = (x = 1);
x = 42;
foo.Bar(y);
Run Code Online (Sandbox Code Playgroud)
尽管x另一次改变了,y仍然包含1.