我从parashift.com上了解到,使用delete释放指针所指向的内存。
[16.1] delete p会删除指针p还是指向的数据*p?
指向的数据。
关键字实际上应该是delete_the_thing_pointed_to_by。在C中释放指针所指向的内存时,同样滥用英语:free(p)实际上意味着free_the_stuff_pointed_to_by(p)。
wiki上的“delete (C++)”文章说,“许多程序员在最小化编程错误方面设置指针为NULL后会使用delete”。
需要考虑删除指针本身吗?
声明的指针是否仍占用内存?
例如,如果我声明了数十亿个不同的指针并将它们设为NULL,它们仍然会占用内存(因此我需要删除指针本身)。
如何删除指针?