如果容器不重新分配,STL 的priority_queue会重新分配吗?
Does STL's priority_queue re-allocate if the container does not?
我对stl的Priority_queue以及如何分配内存有点困惑。假设它不需要动态分配内存本身,我是否正确,但是只有基础容器才能?
这意味着使用Boost的static_vector之类的东西,因为容器将导致Priority_queue在设置后永远不会分配它。在实时应用程序中,我需要像Priority_queue之类的东西,我不想分配内存运行时,因此问题。
priority_queue
是容器适配器;它只是容器本身周围的接口。因此,其行为仅是给出的容器的行为。具体而言,它要求容器是一个随机访问容器(因此,支持begin
/ end
/ insert
/etc等通常的容器内容(。
因此,分配行为基于基础容器的行为。如果从容器中删除元素可以处理内存,或者在删除后插入内存会分配内存,则这些操作将处理或分配内存。
相关文章:
- 新分配指向函数的指针是否合法?
- 变体 - 分配新值时是否清理旧值?
- 分配新的零大小数组可以具有有效价值吗?
- 当我尝试为结构分配新指针时出现堆栈溢出错误
- 在函数返回中返回对新分配的shared_ptr的尊重合法吗
- 如何删除新分配的字符,这也是函数返回值?
- C ++中新分配的int的内存大小,有没有不同更好的方法来查看它?
- OpenSSL:当输出ptr为空时,BIGNUM的bin2bn不会分配新的BIGNUM
- 每次我分配新的位置时,都会隐式地称为destuructor
- 为什么这个指针到指针的二维数组像这样分配新的 int
- 如何创建对象变量,以便每次分配新的指针
- C 新操作员分配新内存
- 编译器忽略运算符新分配
- 方法向量的新/分配的复杂性::p ush_back
- 有没有一种方法可以全局填充新分配/删除分配
- 调用时为 std::function 分配新值
- 为什么我的新分配指针会自动在程序退出上删除
- 如果我尚未为指针分配新值,是否需要删除指针?
- OpenCV:为矩阵元素分配新值
- 在避免新分配的同时,const变量的复杂初始化