本文介绍了为什么C ++中的Destructor以与初始化相反的顺序取消分配内存?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
以相反的顺序将内存分配给变量有什么好处?
What is the advantage in de-allocating memory in reverse order to variables?
推荐答案
请考虑以下示例:
Type1 Object1;
Type2 Object2(Object1);
假设Object2
使用Object1
的一些内部资源,并且只要Object1
有效,该资源就有效.例如,Object2
的析构函数访问Object1
的内部资源.如果不是为了保证销毁的反向顺序,那将导致问题.
Suppose that Object2
uses some internal resources of Object1
and is valid as long as Object1
is valid. For example, Object2
s destructor accesses Object1
's internal resource. If it weren't for the guarantee of reverse order of destruction, this would lead to problems.
这篇关于为什么C ++中的Destructor以与初始化相反的顺序取消分配内存?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!