我知道它std::list::operator[]没有实现,因为它有糟糕的性能.但是std::vector::insert它的效率低得多std::list::operator[].背后的解释是什么?
std::vector::insert实现是因为std::vector必须满足SequenceContainer概念的要求,而operator[]任何概念(我所知道的)都不需要,可能会ContiguousContainer在c ++ 17的概念中添加.因此operator[]添加到可以像数组一样使用的容器,而insert接口规范需要这样,因此符合某些概念的容器可以用于通用算法.