(, T & &) ++.
T - ( int, ):
(, cv-qual like const T& , const T & & .)
. :
int main()
{
int ival = 1024;
int &refVal = ival;
int & &refRefVal = refVal;
}
, , int & &. , , .
( , , . , int & & , int & - . Collapsing - , , .)
Clang 3.8, :
error: 'refRefVal'
. , Microsoft Visual ++ :
C2529: 'refRefVal':
, , .
, . , , , . , ; .
, (int &refVal3 = refVal;), , , . , , .
int, 1024:
int ival = 1024;
lvalue, int:
int &refVal = ival;
2 int, refVal , :
refVal = 2;
int, , , refVal , :
int ii = refVal;
lvalue , , refVal , :
int &refVal3 = refVal;
, , , .
, int &refVal3 = refVal; - , - , refVal, int, .
, T & &, ?
using Ref = int&;
using RefRef = Ref&;
, RefRef int& &. . , , :
using RefRef = int&;
, , , templates, , , , ( , , , - , .)
-, . ++ .