gpt4 book ai didi

c++ - 会删除这个调用析构函数吗?

转载 作者:搜寻专家 更新时间:2023-10-31 00:40:59 24 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
C++: Delete this?

在堆上创建了一个类 Foobar。我想在它死后退出应用程序。当我调用 die() 函数时,它必须死掉。在堆上创建了一些私有(private)属性——我还需要删除它们。我写了这段代码:

Foobar::Foobar()
{
m_var = new int(1);
}

Foobar::~Foobar()
{
delete m_var;
exit(0);
}

void Foobar::die()
{
delete this;
}

问题在 delete this 行。如果我调用它,Foobar::~Foobar() 是否会被调用?

附言如果有更好的解决方案,请提出。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com