gpt4 book ai didi

c++ - 声明带/不带大括号的 C++ 对象之间的区别

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:58:57 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
constructor invocation mechanism

我花了很长时间才弄清楚这个问题。所以我很想知道它们之间的区别。下面是代码片段:

struct Test
{
Test () { cout<<" Test()\n"; }
~Test () { cout<<"~Test()\n"; }
};
int main()
{
Test obj(); // Remove braces of 'obj' & constructor/destructor are printed
}

想知道,为什么会有这样的行为?声明带/不带空大括号的对象有什么根本区别吗(这里我们只讨论默认构造函数的情况)。代码编译为最新版本的 Ubuntu/g++ 之一。抱歉,这是一个重复的问题。

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