c++ - 删除后指针指向哪里?

标签 c++ pointers memory delete-operator

当我们对一个指针使用delete时(delete p;),并且不使用nullptr然后,它指向内存中的其他位置。该新位置能否具有有效值,以便我们可以在代码中使用它?

最佳答案

指针在被deleted 后是指向相同的位置还是指向不同的位置,语言没有规定。一个实现可以自由地使用该指针的值做任何他们想做的事情。

Can that new location have a valid value so that we can use it in the code?

这取决于您的代码。编译器不需要这样做。

关于c++ - 删除后指针指向哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35487275/

相关文章:

c++ - 如何在 C++ 中的文件列表中逐个文件打开文件?

c++ - 如何查看库的内部(尤其是 C 标准库)?

ios - Swift - 转换 AutoreleasingUnsafeMutablePointer<AnyObject?> 值

c++ - x86 EXE 中是否有分配 winapi 调用?

iphone - 使用 VM 跟踪器进行 iOS 分析。脏内存和常驻内存导致内存警告,怎么办?

c++ - 为什么 const char * 和 const char [] 作为函数参数被认为是等价的?

c++ - 我可以使用没有指针的 fread 读取动态长度变量吗?

c - 为什么这个程序通过引用传递参数

Debian 上的 Java native 内存泄漏

c++ - 如何修复 "unresolved external symbol _gladLoadGLLoader referenced in function _main"和 "unresolved external symbol _glad_glViewport"?