Почему std::initializer_list передается не по ссылке

Например, вот реализация MSVC конструктора у вектора

vector(initializer_list<_Ty> _Ilist, const _Alloc& _Al = _Alloc())
        : _Mybase(_Al)
        {   // construct from initializer_list, optional allocator
        _Range_construct_or_tidy(_Ilist.begin(), _Ilist.end(), random_access_iterator_tag{});
        }

Почему initializer_list<...> всюду передается как value, а не lvalue, rvalue ссылки?


Ответы (0 шт):