显然,以下在 c# 中完全没问题;
int a;
int b = a = 2;
是否可以在单个语句中在 c# 中进行多个变量赋值?
即类似的东西;
int a = (int b = 2);
显然,以下在 c# 中完全没问题;
int a;
int b = a = 2;
是否可以在单个语句中在 c# 中进行多个变量赋值?
即类似的东西;
int a = (int b = 2);
如果我们看:
int a;
int b = a = 2;
基本上就是a=2;
这样b=a;
(但没有额外的评估)。所以我们可以通过颠倒顺序得到类似的结果:
int a = 2, b = a;
但是:我会说有点犹豫:也请优先考虑可读性。
据我所知不是。我知道的唯一变化是:
int a = 2, b = 2;
可能与您将要获得的一样近。
int a, b = a = 2;
Console.WriteLine(a.ToString()); // 2
Console.WriteLine(b.ToString()); // 2
不,但你可以
int a = 2, b = a;
这里 a 将被初始化,然后 b 将被初始化为与 a 相同的值。
或者
int a, b = 2;
或者
int a = 2, b = 2;
或者如你所说
int a = b = 2;
你是这个意思?
int a = 2, b = 2;
工作正常