C ++可以改变析构函数的调用顺序可能有害吗?

时间:2014-05-21 08:34:55

标签: c++ memory-management destructor

我正在摆弄一个c ++池分配器,它在Pool::releaseAllObjects()结束时调用main()方法时会销毁其中的所有对象。但是如果有人意外地在对象上调用了delete,则Pool会以随机顺序销毁对象。 我的问题是main()末尾的析构函数的随机调用顺序如何“有害”?

1 个答案:

答案 0 :(得分:0)

只要与构造函数体无关,顺序就无关紧要。如果对象相互引用,并且在析构函数中调用裁判方法,那么破坏的顺序显然很重要。否则你就安全了。