美文网首页
空指针与野指针

空指针与野指针

作者: 沧海梦帆 | 来源:发表于2016-11-10 11:04 被阅读0次

    注意空指针和野指针的区别:
    空指针是指向null的指针,没有指任何内存地址。而野指针是,指向了一块内存地址,但是这块内存却被释放收回了。

    在c++中:

    p = nullptr;
    delete p;//完全合法
    
    p = new int;
    delete p;//内存释放
    delete p;//没有指向有效内存成为野指针,重复释放
    
    if(p != nullptr)//多余的判断 确保delete之后将指针指向null 然而这只是有限的保护,对于多个指针指向同一个内存,仍然无能为力
      delete p;
    

    相关文章

      网友评论

          本文标题:空指针与野指针

          本文链接:https://www.haomeiwen.com/subject/dptxpttx.html