相关疑难解决方法(0)

为什么一个类只有一个析构函数?

我被问到一个问题,一个班级有,multiple constructors但为什么它只有one destructor

我举了下面的例子,

class abc
{
public:
    int a;
    abc()
    {
        cout << "Default\n";
    }
    abc(int)
    {
        cout << "Int\n";
    }
    ~abc()
    {
        cout << "Destructor\n";
    }
};
int main()
{
    abc ab;
    abc a(5);
}
Run Code Online (Sandbox Code Playgroud)

我在abc之前解释过(5); 被调用的析构函数将被调用,因此在特定时间点只会有一个对象.我现在在我的电脑上运行上面的代码,但它给了我输出

Default
Int
Destructor
Destructor
Run Code Online (Sandbox Code Playgroud)

如果是这样,那么我们为什么one destructor呢?

c++

4
推荐指数
1
解决办法
8903
查看次数

标签 统计

c++ ×1