跳到主要内容

标记为[move-sethetics]的问题

移动语义是一种编程语言功能,当源对象是临时对象或即将过期的对象时,它允许用更高效的“移动”代替复制操作。

移动语义
2,141问题
筛选依据
排序依据
标记为
0 投票
0 答案
42 意见

使用只能移动(不能复制)的临时对象构建STL容器[重复]

假设我有一个只能移动的类型(复制构造函数和赋值运算符已被删除):struct FooBar{整数a;整数b;FooBar&operator=(const FooBar&other)=。。。
约翰·奥布莱恩的用户头像
1 投票
1 回答
74 意见

Rust的移动语义是否涉及复制数据?[副本]

我很好奇Rust中的“移动语义”,以及所有权转移时是否复制了数据。下面是一些演示代码:#[导出(调试)]结构Foo{名称:i32,年龄:i32,}...
Archsx的用户头像
2 投票
0 答案
71 意见

失败时返回移动的参数

如果发生某种问题,返回一个移动的函数参数是可以接受的模式吗?例如,当尝试在数据库中存储数据时,验证失败,数据句柄。。。
Michael的用户头像
  • 938
5 投票
1 回答
158 意见

实现值类型赋值的现代方法

这个问题是关于如何在现代C++值类型中实现赋值,以避免误导代码或与内置行为不一致的代码。在C++中,生成的值(。。。
alfC的用户头像
  • 15.6万
0 投票
0 答案
65 意见

Move语义:当参数是rvalue引用时,为什么return语句调用copy构造函数?[副本]

考虑以下代码:类小工具{公众:小工具(){标准::cout<<“\n计数器”;}小工具(常量小工具对象(&O){std::cout<<“\n复制系数&。。。
exect的用户头像
  • 1
2 投票
2 答案
118 意见

C++在返回值上移动语义

就返回值的移动语义而言,我听说最佳实践是按原样返回对象,不要对其调用std::move,因为这会阻止返回值优化。然而,考虑一下。。。
刘易西的用户头像
0 投票
0 答案
99 意见

复制和交换习惯用法是否有不需要的交换?

在回答这个问题时,在“为什么这样做有效?”的标签下,有人指出:现在,如果用一个rvalue初始化另一个,它将被move-constructed。很 完美。在…中。。。
CS学生的用户头像
15 投票
2 答案
536 意见

在条件运算符结果的赋值中复制后移动

简化程序如下结构S{S(){}S(常数S&){}S(S&&)=删除;};S x;S y=假?S():x;GCC和Clang都很满意,但最新的Visual。。。
Fedor的用户头像
  • 1.9万
0 投票
2 答案
128 意见

在c++中有执行move或copy的标准函数吗?

我有一个接受rvalue引用的函数:无效foo(int&&x);我想创建另一个函数,为原始函数提供通用接口:模板<。。。
Arc_Angle的用户头像
1 投票
2 答案
59 意见

错误:使用移动值,但无法使用

考虑以下代码:fn print_or(opt:Option<()>,tail:Vec<i32>)->Vec<i32>{opt.map_or(尾部,|_|{打印!(“{:?}”,尾部);})}...
Some Name的用户头像
  • 9,337
1 投票
1 回答
92 意见

C++将字符串传递给类setter函数[duplicate]

我看到StackOverflow中讨论了这个问题,但我找不到正确的答案。我已经使用C++很多年了,我仍然对如何为。。。
Andrey Rubliov的用户头像
1 投票
1 回答
60 意见

为什么索引[]尝试移动值,但直接调用索引不会[重复]

例子:使用std::ops::Index;fn测试(v:&Vec<Vec<i32>>){设t=v.index(0)//好 啊设t=v[0]//错误,Vec<i32>未实现复制特征}游乐场为什么?
Some Name的用户头像
  • 9, 337
2 投票
1 回答
54 意见

move-constructing是专门类的属性吗?

考虑Dog类继承自Animal:动物类{…};狗类:公共动物{公众:狗(狗和其他):动物(标准::移动(其他)),breed(标准::move(其他.breed)){...
qdii的用户头像
  • 12.8公里
0 投票
0 答案
87 意见

将参数移动到类构造函数中的正确方法是什么?[副本]

我的基本情况是这样的。类MyClass{公众:MyClass(标准::vector<int>v):m_vector(v){}void doSomething();私人:标准::vector<int>。。。
Michele Spagnolo的用户头像
1 投票
答案
97 意见

显式声明模板参数时如何执行完美转发

考虑这个简单的函数模板<类型名U>自动mkVector(U&&x0){返回std::vector;}和4个可能的用例。。。
法比奥的用户头像
  • 2,207

15 30 50 每页
1
2 4 5
143