В библиотеке iterator
было представлено множество функций доступа по ходу C+. +11, С++ 14 и С++ 17:
begin
/end
cbegin
/cend
crbegin
/crend
data
empty
rbegin
/rend
size
Могу ли я использовать их в любом контейнере, даже в нестандартном контейнере (при условии, что они предоставляют доступный соответствующий метод?). Например, при наличии QVector
foo
можно сделать так:
const auto bar = begin(foo);