繁体   English   中英

C ++ Primer练习2.27 [第5版]。

[英]C++ Primer exercise 2.27 [5th ed.]

我正在从C ++入门手册第5版进行练习2.27,对此问题感到困惑:

练习:以下哪些初始化是合法的? 解释为什么。

(c)const int i = -1,&r = 0;

我得出的结论是r非法,因为这将与以下内容相同:

const int i = -1;
int &r = 0;

但是这个github回购建议(c)如下:

const int i = -1;
const int &r = 0;

因此,它与我的答案相矛盾,请提供正确的答案。

PS:我是C ++语言的初学者。

类型限定符( int )和限定符( const )属于声明中的所有声明符

const int i = -1, &r = 0;

因此,声明符i&r具有类型说明符和限定符const int 而且你可能不写例如

int &r = 0;

因为临时对象(在这种情况下为表达式0)可能不会绑定到非恒定引用。

但是你可以写

int &&r = 0;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM