我正在使用std::vector
第一个元素有点特殊的地方,并且需要与其他元素略有不同的处理。
我想使用基于 C++11 范围的 for 循环以获得更高的可读性,以下代码在这种情况下是否正确且良好的做法?
std::vector<T> v;
// [...] build v
bool isFirst = true;
for(auto element : v)
{
// [...] do lots of things common to all elements
if(isFirst)
{
// [...] do something that only applies to the first element
}
// [...] do lots of things common to all elements
isFirst = false;
}
从技术上讲,当使用基于范围的 for 循环时std::vector
,是否保证按顺序处理元素,从v.front()
到v.back()
?