gpt4 book ai didi

c++ - "MyClass mc = MyClass()"还是 "MyClass mc"?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:24:31 24 4
gpt4 key购买 nike

有什么区别

MyClass mc = MyClass();

MyClass mc;

在 C++ 中?

最佳答案

第一个调用复制构造函数,以临时对象作为参数 - MyClass() 创建临时对象。

第二个调用默认构造函数。

实际上,在大多数情况下,它们针对相同的代码进行了优化,但这就是语义上的差异。


Negal 所述,POD 类型的情况略有不同;当“MyClass”是 POD 时,第二个片段不会对 mc 进行值初始化,而第一个片段会。

关于c++ - "MyClass mc = MyClass()"还是 "MyClass mc"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11951365/

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