gpt4 book ai didi

c++ - 标准与显式自动推导变量声明

转载 作者:太空宇宙 更新时间:2023-11-04 13:01:47 24 4
gpt4 key购买 nike

考虑这两个等价的变量声明:

int foo{5};
auto bar = int{5};

使用后一种语法有什么好处吗?

最佳答案

更喜欢第一种语法,因为在第一种情况中没有额外的拷贝,但在第二种情况中我们创建了临时对象然后复制此对象为原始变量 bar。但这只是在禁用 copy elison

的情况下

禁用复制elison:

int foo{5}; // No temporary object
auto bar = int{5}; // Created temporary object and then it is copied in bar

启用复制elison:

int foo{5}; // No difference with the second line
auto bar = int{5}; // No difference with the first line

关于c++ - 标准与显式自动推导变量声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43875292/

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