Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++11 STL列表迭代器C和x2B之间的差异+;11_C++11_Stl_Iterator - Fatal编程技术网

C++11 STL列表迭代器C和x2B之间的差异+;11

C++11 STL列表迭代器C和x2B之间的差异+;11,c++11,stl,iterator,C++11,Stl,Iterator,我看到在C++11中,列表(STL)中有4个新函数返回迭代器,它们是cbegin、cend、crbegin和crend。当我阅读CPluPlus(网页)时,我看到它们只返回所有4种常量迭代器(开始、结束、反向开始和反向结束迭代器),但问题是: 如果列表是const限定的(我说的是begin、end、rbegin和rend),那么C++11之前存在的函数已经返回了const迭代器,那么这些const迭代器与新的C++11函数返回的有什么区别呢?或者至少,当已经有4个返回相同常量迭代器的函数时,创建

我看到在C++11中,列表(STL)中有4个新函数返回迭代器,它们是cbegin、cend、crbegin和crend。当我阅读CPluPlus(网页)时,我看到它们只返回所有4种常量迭代器(开始、结束、反向开始和反向结束迭代器),但问题是:

如果列表是const限定的(我说的是begin、end、rbegin和rend),那么C++11之前存在的函数已经返回了const迭代器,那么这些const迭代器与新的C++11函数返回的有什么区别呢?或者至少,当已经有4个返回相同常量迭代器的函数时,创建4个新闻函数有什么意义

感谢并为我的英语感到抱歉。

cbegin总是返回一个
常量迭代器

如果您在常量容器上调用begin,它将返回一个
常量迭代器
,但有时您有一个可变容器,出于某种原因,您需要一个
常量迭代器
。以前,您必须调用
begin
,然后显式地将
迭代器
转换为
常量迭代器