容器reference类型的疑问,该怎么处理

容器reference类型的疑问c++ primer P324:C/C++ code...if (!ilist.empty()){// val and val2 refer to th

容器reference类型的疑问
c++ primer P324:

C/C++ code
...if (!ilist.empty()){// val and val2 refer to the same elementlist<int>::reference val = *ilist.begin();list<int>::reference val2 = ilist.front();...}/*1. list<int>::reference val = *ilist.begin();是不是相当于int& val = *ilist.begin();begin()返回指向第一个元素的迭代器,那*ilist.begin()就是第一个元素的值。这行语句定义val为一个右值的引用??2. list<int>::reference val2 = ilist.front();是不是相当于: int &rval = first_element_of_ilist;int &val2 = rval;




[解决办法]
谁说解引用返回的是右值啦