目录:
定义-Stale Pointer Bug是什么意思?
过时的指针错误是指在进行动态分配的代码中,特别是借助C语言函数“ malloc”或其等效功能时,可能会发生的微妙编程错误。
过时的指针错误也称为别名错误。
技术百科解释过时指针错误
在各种指针指向某个存储块的情况下,可能会发生这种情况,即通过特定的别名释放或重新分配该存储,然后通过另一个别名进行引用。 在分配历史和malloc领域的状态方面,这可能导致微妙的甚至是零星的损失。
如果没有为分配的内存创建别名,则可以轻松避免这种错误。 避免过时的指针错误的另一种选择是使用更高级的语言,例如Lisp,它结合了垃圾回收器。
术语“过时的指针错误”目前与C编程相关; 但是,此错误在1960年代的Fortran和ALGOL 60中已经以非常相似的方式出现。
