显然,以下内容在c#中完全没问题;
int a;
int b = a = 2;
是否可以在单个语句中在c#中执行多个变量赋值?
即。类似的东西;
int a = (int b = 2);
答案 0 :(得分:5)
如果我们看一下:
int a;
int b = a = 2;
基本上是a=2;
然后b=a;
(但没有额外的eval)。所以我们可以通过颠倒顺序来获得类似的结果:
int a = 2, b = a;
然而:我会说犹豫不决:请同时优先考虑可读性。
答案 1 :(得分:3)
据我所知。我所知道的唯一变化是:
int a = 2, b = 2;
答案 2 :(得分:3)
可能会尽可能接近你。
int a, b = a = 2;
Console.WriteLine(a.ToString()); // 2
Console.WriteLine(b.ToString()); // 2
答案 3 :(得分:0)
不,但你可以做到
int a = 2, b = a;
这里a将被初始化,然后b将被初始化,其值与a相同。
或
int a, b = 2;
或
int a = 2, b = 2;
或正如你所说
int a = b = 2;
答案 4 :(得分:0)
你是说这个?
int a = 2, b = 2;
工作正常