什么是指针稳定性?

时间:2019-12-19 06:10:05

标签: c++ pointers operating-system virtual-memory abseil

link中有关Abseil容器的第二段内容为:

  

例如,Abseil容器通常不保证插入或删除后指针的稳定性。

在这种情况下,指针稳定性是什么意思?

2 个答案:

答案 0 :(得分:2)

  

指针稳定性”是指只要元素存在,指向元素的指针就保持有效(不会无效),即使底层容器发生了更改,代码也可以缓存指向元素的指针。说容器具有指针稳定性与说它不移动内存中的元素是相同的。他们的地址不变。指针稳定性/无效性与参考稳定性/无效性相同。

这是您发布的页面上的说明:https://abseil.io/docs/cpp/guides/container(Abseil容器)。

答案 1 :(得分:0)

指针稳定性意味着指针在它指向的对象的生命周期内保证保持稳定(即指针指向的地址保持不变并且不会改变),除非你做一些事情来破坏它。

>

操作系统为您的进程提供的虚拟内存空间会将事物保持在相同的地址。虽然物理内存可能会改变。这是操作系统必须注意的事情之一。

参考:Are Pointers stable?

相关问题