2016-12-31 16 views
-1

所以,问题是这样的:使用“常量”多个逗号前和对象

const int ci = 0, &cj = ci; 

如此做const赋予其创建后的每一个对象?这是否读取“ci是一个const int”和“cj是一个const int的引用”以及?或者是& cj不是常量,只是意味着“对ci的引用”?

如果常量DOES涵盖整条生产线,你看这个......

int j = i; 
const int &k = i; 
int *p = &i; 

现在的常量是在中间,它忽略第一个对象,并在前面的一切创造一个常量它?

+2

你好,欢迎来到SO。请[参观](http://stackoverflow.com/tour)并阅读[帮助页面](http://stackoverflow.com/help)。这里有一个不错的[C++书籍]列表(http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)。 – 2016-12-31 00:37:13

+0

这里有太多的问题(我数4)。请缩小它。参考[问]。 –

+1

这似乎很容易为自己测试。 –

回答

2

在变量声明中,类型名称和限定符适用于在该语句中声明的所有变量。因此,在您的第一个示例中,ci&cj均被声明为const int

在第二个例子中,每个声明都是一个单独的声明。类型名称和限定符对不同的语句没有任何影响。