30/09/2018, 18:06
Tại sao delete một con trỏ nhưng giá trị của nó vẫn khác NULL?
Đây là 1 phần chương trình của em:
class student{
........
}
void func(student *a){
delete a;
a = NULL;
}
int main(){
student *stu = new student();
func(stu);
......
}
Sau khi họi hàm func thì stu vẫn khác NULL. Tại sao vậy mọi người?
Bài liên quan





student *&a nó mới cập nhật lại bạn.
Trong code của bạn,


avàstulà 2 con trỏ trỏ đến cùng một đối tượng. Mình tạm gọi làO.Khi bạn gán
a = NULL, nó không làm chostu = NULL.Nếu bạn muốn gán
NULLchostuthông quaa, bạn phải khai báoalà con trỏ trỏ đến con trỏTham khảo: