C++ STL';如果容器未重新分配,是否重新分配队列的优先级?

C++ STL';如果容器未重新分配,是否重新分配队列的优先级?,c++,memory,stl,priority-queue,C++,Memory,Stl,Priority Queue,我对STL的优先级队列和它如何分配内存有点困惑。我假设它不需要动态分配内存本身,但只有底层容器可以这样做,对吗 这意味着使用Boost的static_vector之类的东西作为容器将导致一个优先级_队列,一旦设置好就永远不会分配。我需要像实时应用程序中的优先级队列这样的东西,我不想在运行时分配内存,这就是问题所在;它只是容器本身周围的一个接口。因此,它的行为只是给定容器的行为。具体来说,它要求容器是随机访问容器(因此支持常见的容器内容,如开始/结束/插入/etc) 因此,分配行为基于底层容器的行

我对STL的优先级队列和它如何分配内存有点困惑。我假设它不需要动态分配内存本身,但只有底层容器可以这样做,对吗


这意味着使用Boost的static_vector之类的东西作为容器将导致一个优先级_队列,一旦设置好就永远不会分配。我需要像实时应用程序中的优先级队列这样的东西,我不想在运行时分配内存,这就是问题所在;它只是容器本身周围的一个接口。因此,它的行为只是给定容器的行为。具体来说,它要求容器是随机访问容器(因此支持常见的容器内容,如
开始
/
结束
/
插入
/etc)

因此,分配行为基于底层容器的行为。如果从容器中删除元素可以释放内存,或者如果删除后插入可以分配内存,那么这些操作将释放或分配内存。

定义“运行时”和“设置”。