让我们说:
@ViewChild('model_number') model_number.DOMelement:ElementRef;
我理解在没有struct A
{
int data;
};
int main( void )
{
{
A a;
a.data = 4;
}
cout << "Hello World" << endl;
return 0;
}
的情况下创建的对象存储在堆栈中,并在退出定义它的作用域时自动销毁。因此,当它执行第13行时,对象new
不应该存在。
第二种情况:
a
问题是如果我将范围内struct A
{
int data;
};
int main( void )
{
A * b;
{
A a;
a.data = 4;
b = &a;
}
cout << b->data << endl;
return 0;
}
的地址分配给指针,那么对象何时会被销毁?因为我可以在范围之外打印该对象的数据值,这意味着该对象必须仍然存在。
答案 0 :(得分:3)
不,这意味着您遇到了未定义的行为,因此您可以推断的任何结论都无关紧要。
关闭范围,期间后,b
中存储的地址不会指向任何有效数据。