常量的应用范围?
Applications of const&& in range-for?
在循环的范围内使用const&&
是否有意义?
for (const auto && x : c) // ?
简短回答:没有,range-for loops
(或其他)中没有const auto&&
的用途
如果希望以优化的方式移动对象,则可以使用rvalue references
。除非可以修改从中移动的对象,否则(通常)无法执行此操作。因此const rvalues
(*)没有实际用途(因为无法修改它们,所以无法从中移除)。
range-for loops
在关于const auto&&
的讨论中没有带来任何内容。
例如,看看这个SO帖子:对const的右值引用有任何用处吗?
常量值引用的唯一用途是删除一些函数重载。这不适用于range-for loops
。
(*)顺便说一下,const auto&&
是常量值引用,而不是转发引用。
相关文章:
- 为什么在全局范围内使用"extern int a"似乎不行?
- 尝试通过多个向量访问变量时,向量下标超出范围
- 错误:未在此范围内声明'reverse'
- 试图在visual studio上用C++创建一个桌面应用程序
- 正在将指针转换为范围
- 递归应用 C++20 范围适配器会导致编译时无限循环
- 当按下任何qpushbutton时,应用程序范围较高
- 将自适应阈值应用于范围函数 opencv c++
- C++:将参数应用于函数范围
- 关闭Qt控制台应用程序会终止exec()调用中的进程,并且无法从main()扩展到范围
- 常量的应用范围?
- 在 ipv6 链接范围单播 udp 客户端-服务器中应用 boost::asio::ip::udp,有时有效,但有时无效
- 应用于单词数组的随机数范围
- 在单个(成员)函数的范围之外应用 RAII
- 错误:“应用”未在此范围内声明
- 标准算法 any_of()、all_of() 和 none_of() 应用于空范围
- 整数宇宙映射数组到固定范围的应用与实现
- 应用范围解析运算符会导致编译器阻塞
- 当应用于命名空间范围的类时,静态是什么意思?
- 当C++试图访问向量的元素(在范围内)时,Qt Quick Windows应用程序崩溃