Quando um objeto está fora do escopo?

Em C ++, quando um objeto é definido como "fora do escopo"?

Mais especificamente, se eu tivesse uma única lista vinculada, o que definiria um único objeto de nó de lista como "fora do escopo"? Ou se um objeto existe e está sendo referenciado por uma variávelptr, é correto dizer que o objeto é definido como "fora do escopo" no momento em que a referência é excluída ou aponta para um objeto diferente?

ATUALIZAÇÃO: Supondo que um objeto é uma classe que possui um destruidor implementado. O destruidor será chamado no momento em que o objeto sair do escopo?

<code>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;
}
</code>

Em outras palavras, o Nó seria apontado porlist_1 chame seu destrutor após esta linha:

<code>Node* list_1 = new Node (3);
</code>

?

questionAnswers(5)

yourAnswerToTheQuestion