相关疑难解决方法(0)

什么时候对象"超出范围"?

在C++中,何时将对象定义为"超出范围"?

更具体地说,如果我有一个单链表,那么将单个列表节点对象定义为"超出范围"?或者,如果一个对象存在并且被一个变量引用ptr,那么在删除引用或指向另一个对象时,该对象被定义为"超出范围"是否正确?

更新:假设一个对象是一个具有已实现的析构函数的类.在对象退出范围的那一刻,是否会调用析构函数?

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;
}
Run Code Online (Sandbox Code Playgroud)

换句话说,通过list_1在此行之后调用其析构函数来指向Node :

Node* list_1 = new Node (3);
Run Code Online (Sandbox Code Playgroud)

c++ destructor scope

26
推荐指数
2
解决办法
4万
查看次数

标签 统计

c++ ×1

destructor ×1

scope ×1