gpt4 book ai didi

C++ 创建对象、初始化列表与赋值?

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

我最近与一位 friend 讨论,他们说在 C++ 中创建对象时使用初始化列表(而不是简单地分配数据成员)会提高性能。

这是为什么(如果是真的)?

我找到了这个页面:

http://www.parashift.com/c++-faq/init-lists.html

他们提到了临时对象,但我认为最近的编译器可以避免这种情况?

最佳答案

使用赋值时,对象是在您进行赋值之前默认构造的。如果构造和复制一个对象是昂贵的操作,你至少应该去掉其中的一个。初始化列表摆脱了额外的复制操作。复制构建允许同时执行这两项操作。

关于C++ 创建对象、初始化列表与赋值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13894415/

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