容器内的元素操作看到书上说,不能定义引用类型的引用,可为什么reference却可以保存引用类型?list::refer

容器内的元素操作
看到书上说,不能定义引用类型的引用,可为什么reference却可以保存引用类型?
list::reference val = *ilist.begin();
list::reference val2 = ilist.front();
front函数返回的是容器的第一个元素的引用,而reference是value_type&的同义词.那说明val是引用类型,而函数返回的也是引用,那不就跟“不能定义引用类型的引用”有矛盾吗?
value_type这个类型怎么用?
你可以举一些“引用类型的引用”的例子吗?谢谢
南方苍狼 1年前 已收到1个回答 举报

夭夭之花 幼苗

共回答了20个问题采纳率:80% 举报

value_type不是一种类型,而是泛指C++模板使用的所有类型.譬如你用的list,就是一个模板;在list里面,value_type就是int.
所以在你举的这个例子里面,list::reference事实上就是一个int的引用,而front()返回的也是一个int的引用.这里并没有出现“引用类型的引用”.

1年前

5
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.014 s. - webmaster@yulucn.com