0 c++ pointers compiler-warnings
可能重复:
删除指针后禁用指针是否合适?
我的教授告诉我们,在我们删除它指向的已分配空间后,将指针设置为0是一个好习惯,而且我一直试图养成这样做的习惯.但是当我这样做时,我的编译器会发出警告:
警告W8004 LinkedList.h 102:为'nPtr'分配一个从未在函数LinkedList :: remove(int)中使用的值
我知道警告不是世界末日,我的程序仍然可以编译,但我的OCD不会放过它.所以我问你更多知识渊博的程序员:
删除它的节点后将指针设置为0是否常见,这是一个很好的做法吗?如果我继续让我的程序编译时出现这样的警告,这有关系吗?感谢所有答案!
是很常见.恕我直言,这不是好习惯.
好的做法是以你已经知道删除后不能使用指针的方式安排你的删除.最好的方法是使用RAII,即在析构函数中完成工作.一旦析构函数到达结尾,对象就不再存在,因此指针(作为数据成员)不再存在,因此它不会悬空.
| 归档时间: |
|
| 查看次数: |
2642 次 |
| 最近记录: |