指针

野指针

野指针就是未进行初始化的指针,你不知道这个指针变量里面的内容是什么,一般是最近一次这块内存上面的内容,也就是说不知道用这个指针访问的内存是哪一块,所以指针初始化的时候要typename * p = nullptr;

悬空指针

悬空指针就是将这个指针指向的内存已经释放了,却没有对指针进行赋空,因为C++并没有垃圾回收机制,你delete了一个指针只是释放了指针指向的内存空间,而指针本身依旧还在,正确的操作是delete一个指针后立马将指针赋值为nullptr

空指针

就是指向NULL的指针,但是不保证一定是空,因为NULL本质就是0,我依旧可以用*p来访问地址为0的区域啊,虽然这是会被编译器禁止的。