Kiedy obiekt jest „poza zasięgiem”?
W C ++, kiedy obiekt jest zdefiniowany jako „poza zakresem”?
Dokładniej, jeśli miałbym listę pojedynczo połączoną, co zdefiniowałoby obiekt węzła z pojedynczą listą jako „poza zakresem”? Lub jeśli obiekt istnieje i odwołuje się do niego zmiennaptr
, czy poprawne jest stwierdzenie, że obiekt jest zdefiniowany jako „poza zakresem” w chwili usunięcia odniesienia lub wskazuje na inny obiekt?
AKTUALIZACJA: Zakładając, że obiekt jest klasą, która ma zaimplementowany destruktor. Czy destruktor zostanie wywołany w momencie, gdy obiekt opuści zakres?
if (myCondition) {
Node* list_1 = new Node (3);
Node* list_2 = new Node (4);
Node* list_3 = new Node (5);
list_1->next = list_2;
list_2->next = list_3;
list_3->next = null;
}
Innymi słowy, czy Węzeł będzie wskazywany przezlist_1
wywołaj jego destruktor po tej linii:
Node* list_1 = new Node (3);
?