gpt4 book ai didi

c++11 - 更喜欢 const T&&

转载 作者:行者123 更新时间:2023-12-02 23:27:05 29 4
gpt4 key购买 nike

在什么情况下您会更喜欢 void fun(const T&&)超过void fun(T&&)void fun(const T&)

最佳答案

在某些情况下,优先使用 const T&& 而不是 T&&。例如,假设您有一个只能使用 const 左值引用来调用的方法,因为该方法存储了该引用。在这种情况下,最好为右值引用添加一个deleted覆盖,以避免临时对象绑定(bind)到 const 左值引用。

void foo(const bar& b) { ... }
void foo(const bar&&) = delete;

如果您有一个返回const bar的方法,则将选择第二个重载。它不适用于 T&& 而不是 const T&&

const bar make_bar() { ... }
foo(make_bar()); // ERROR, foo is deleted.

关于c++11 - 更喜欢 const T&&,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22130792/

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