Const和Volatile是参考兼容的吗?

时间:2016-02-10 17:35:02

标签: c++

我问这个问题是因为对下面问题的接受答案感到困惑:

Why can't we initialize a reference to const int with an rvalue volatile int&&?

对于那里所述问题的案例1,为什么它应该出现在标准中提到的以下部分:

  

如果初始化表达式是xvalue(但不是位字段),则类prvalue,数组prvalue或函数lvalue和“cv1 T1”与“cv2 T2”引用兼容,或

根据我的知识,它不应该出现在本节中,因为volatile int && bar()返回的xvalue属于volatile类型,而const int &volatile xvalue不兼容,因此它应该转到引用初始化的最后一部分,与案例2相同,应创建临时,案例1也应作为case2传递。

请帮我澄清一下。

0 个答案:

没有答案