另外一个要注意的问题:不要返回指向栈内存的指针或引用(即局部变量的地址),因为栈内存在函数结束时会被释放。
一般来说,野指针形成的原因有以下几种:
1、指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的默认值是随机的。
2、指针p被free或者delete之后,没有置为NULL,让人误以为p是个合法的指针。
3 、指针操作超越了变量的作用范围,这种情况让人防不胜防,实际中出现这种问题的情况很多,需要多加提防。另外一个要注意的问题:不要返回指向栈内存的指针或引用(即局部变量的地址),因为栈内存在函数结束时会被释放。
一般来说,野指针形成的原因有以下几种:
1、指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的默认值是随机的。
2、指针p被free或者delete之后,没有置为NULL,让人误以为p是个合法的指针。
3 、指针操作超越了变量的作用范围,这种情况让人防不胜防,实际中出现这种问题的情况很多,需要多加提防。