Почему в контейнерах STL в контейнерах STL нет перегрузки RVALUE Ref-квалификации?C++

Программы на C++. Форум разработчиков
Anonymous
Почему в контейнерах STL в контейнерах STL нет перегрузки RVALUE Ref-квалификации?

Сообщение Anonymous »

В следующем коде: < /p>

Код: Выделить всё

#include 
int main() {
using vec_t = std::vector;
vec_t v;
auto it1{std::move(v).begin()};// type is vec_t::iterator
auto it2{std::make_move_iterator(v.begin())}; // type is std::move_iterator
}
переменная IT1 имеет тип vec_t :: iterator , хотя begin () вызывает на r-value std :: move (v) , что может показаться мне естественным. Мне интересно, почему он не возвращает ove_iterator . Почему нет перегрузки RVALUE REF-квалификации BERT () ? Какая логика стоит?


Подробнее здесь: https://stackoverflow.com/questions/796 ... containers

Вернуться в «C++»