在C++中,你能在同一行声明多个引用变量吗

Can you declare multiple reference variables on the same line in C++?

本文关键字:声明 一行 变量 引用 C++      更新时间:2023-10-16

即这些法律声明是:

int x = 1, y = z = 2;
int& a = x, b = c = y;

预期结果是ax的别名,而bcy的别名?

我问只是因为我在这里读

将变量声明为引用而不是普通变量只需在类型名称后添加一个与号

这让我怀疑通过将&放在变量名称之前来创建多个引用变量是否合法。

int x = 1, y = z = 2;--incorrect
int& a = x, b = c = y;--incorrect

声明应该是这样的:

int x = 1, y =2,z = 2;
int&q=x,&b=y,&c=y;

c++中的所有赋值和初始化语句都应该是以下类型:

lvalue=rvalue;

这里的左值必须始终是一个变量,临时值/另一个变量被分配到该变量。右值可以是另一个变量,也可以是计算为临时变量(如(4+5((的表达式。

您需要附加一个&在每个引用的左边(就像声明指针时需要一个*一样(。