腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
通过
值
传递
的
std
::
move
参数
、
、
我需要一些关于这段代码
的
帮助: void foo(
std
::promise<
std
::string> p) {
std
::string result = "ok";p.set_value(
std
::
move
(result));
std
::current_exception();
std
::thread t
浏览 20
提问于2019-08-29
得票数 1
回答已采纳
2
回答
当用来初始化另一个对象时,为什么
参数
要
通过
值
传递
?
、
在将对象
传递
给函数时,可以选择按
值
传递
参数
或按const&
传递
参数
。特别是当对象
的
创建成本可能很高,并且它在内部发生变化或用于初始化另一个对象时,建议按
值
传递
该对象。例如:
std
::vector<
std
::string> d_strings; Foo(
std
::vector<
std
浏览 1
提问于2015-11-24
得票数 5
1
回答
可移动但不可复制
的
物品:按价值
传递
还是
通过
参考
传递
?
、
、
、
、
考虑到仅可移动但不可复制
的
对象(例如,
std
::thread或
std
::unique_ptr),我希望
通过
将该对象作为
参数
传递
给构造函数来转移该对象所包含
的
资源
的
所有权。作为
std
::thread
的
一个示例,考虑下面的类Value,它
的
构造函数
通过
值
接受
std
::thread#include &l
浏览 6
提问于2019-11-21
得票数 1
回答已采纳
2
回答
按
值
/引用/rvalue
传递
std
::
move
(str) arg
、
、
我有以下代码://void func(const
std
::string &i){
std
::string val{i};{ func(
std
::
move
(d)
浏览 2
提问于2020-04-21
得票数 0
回答已采纳
2
回答
是否应该
通过
值
传递
shared_ptr构造函数
参数
、
、
、
、
当我将shared_ptr
传递
给将该
参数
复制到成员shared_ptr中
的
构造函数时,是否应该
通过
值
传递
该
参数
?示例: MyClass(
std
::shared_ptr<MyDependency> dep) {} }; 如果使用临时(MyClas
浏览 0
提问于2018-07-27
得票数 3
回答已采纳
2
回答
接收器
参数
和异常
、
、
、
根据Meyer和Sutter在上
的
讨论,sink
参数
应该
通过
值
传递
,然后移动到成员中。但在异常安全性方面,我觉得这听起来不是个好主意。当构造函数抛出异常时,接收器
参数
的
值
将丢失,而当我
通过
rvalue引用
传递
异常并且异常发生在实际移动之前时,调用者仍然可以检索接收器
参数
的
值
。(
std
::
move
(w1)); } cat
浏览 2
提问于2016-02-28
得票数 3
2
回答
我应该总是使用‘`sink`’构造函数还是setter
参数
?
、
、
、
、
TestMove { Test(
std
::string mStr) : str{
std
::
move
(mStr)} { }在观看了GoingNative2013之后,我明白接收器
参数
应该始终
通过
值
传递
,并与
std
::
move
一起移动。TestMove::ctor是使用这个成语
的
正确方法吗?是否有TestConstRef::ctor更好/
浏览 3
提问于2013-09-07
得票数 21
回答已采纳
2
回答
在C++17中使用const::string和
参数
有意义吗?
、
通过
在string_view中使用C++17,我们获得了将
std
::string和char*
传递
给不占用字符串所有权并避免临时复制
的
函数
的
廉价方法。
通过
使用
std
::string
传递
值
和
std
::
move
,得到r
值
和l
值
引用字符串所有权
的
显式和快速
传递
。我
的
问题是:在新
的
const
s
浏览 0
提问于2019-09-16
得票数 31
回答已采纳
2
回答
不带类型推导
的
LValue和Rvalue
的
C++引用
、
、
、
、
我正在读一个关于左
值
/右
值
引用
的
很好
的
教程。如果我没理解错的话,当有类型推导
的
时候,像T&&这样
的
东西可以同时接受左
值
和右
值
。 但是,有没有办法在没有泛型类
的
情况下实现这一点呢?我希望避免重复接受左
值
和右
值
的
所有方法。当然,也要避免
通过
值
传递
大对象。
浏览 1
提问于2015-01-01
得票数 0
2
回答
如何获取rvalue引用
参数
并将其
传递
到其他地方?
、
、
我希望调用方提供
的
整个向量被移动到Bar.foos中。我希望
通过
将构造函数
参数
设置为vector<Foo>&&而不是普通
的
vector<Foo>&来显式地对调用方进行说明。这样,调用方必须将向量
std
::
move
到构造函数。v.push_back (
std
::
move
(f1)); Bar b (
浏览 3
提问于2016-12-18
得票数 1
回答已采纳
1
回答
如何
通过
模板化
参数
传递
std
::
move
、
、
、
我经常会有一个模板化
的
函数,在那里我会尝试
传递
一个&&类型。问题是,如果我把
std
::
move
作为
参数
,我会得到这样
的
错误:生成该特定错误
的
代码如下: #include <
浏览 12
提问于2020-03-12
得票数 1
1
回答
通过
右
值
引用而不是按
值
获取接收器
参数
,以强制执行接口
的
性能使用
我声称,惯用
的
获取接收器
参数
的
C++方法在保持接口灵活性
的
同时会有很好
的
性能,允许调用者根据需要
传递
副本或从所拥有的
值
移动。
通过
惯用
的
方式,我指的是一个
通过
值
获取
参数
的
函数,或者是常量左
值
和右
值
引用
的
重载集(在左
值
的
情况下,这需要更少
的
移动,代价是一些代码重
浏览 0
提问于2020-05-05
得票数 2
1
回答
c++中具有移动语义
的
unique_ptr
的
传递
向量
、
、
、
我正在学习CPP++14
move
semantics.While,编写了一个小代码,我观察到了一些奇怪
的
行为。我使用r
值
引用将唯一ptr
的
向量移动到一个函数。在调试时,我发现这些更改也被应用于移动
的
对象。为什么即使物体被移动了,我也要观察这个位置?在下面的代码中,
move
做了什么?void func(
std
::vector<
std
::unique_ptr<int>> && vect) { vect.em
浏览 4
提问于2020-09-05
得票数 4
1
回答
将对象移动到foo(Bar&&)函数中
、
对于一个实例Bar b,如果我使用void fooRvalRef(Bar&&)调用fooRvalRef(
std
::
move
(b)),那么就不会调用Bar
的
move
构造函数。另一方面,对于函数void foo(Bar),使用foo(
std
::
move
(b))调用它将调用Bar
的
move
构造函数。 为什么会这样呢?
浏览 3
提问于2016-04-17
得票数 1
回答已采纳
1
回答
lvalue引用可以绑定到rvalue引用,但不能绑定到
std
::
move
的
结果。
、
、
、
我有一个以lvalue引用作为
参数
的
函数,并且我发现我也可以
传递
一个rvalue引用给它。但是,当我将
std
::
move
的
结果
传递
给函数时,我会得到一个错误,它告诉我不能将非const引用绑定到rvalue。s; A a{"a"}; foo(ra);
浏览 3
提问于2022-06-12
得票数 0
3
回答
std
::是否真的需要对按
值
传递
的
重成员
的
构造函数初始化列表进行移动?
、
、
、
、
\n";我
的
问题是:这个
std
::
move
真的需要吗?我
的
观点是,这个p_name不是在构造函数
的
主体中使用
的
,所以,在默认情况下,语言中可能有一些规则可以使用移动语义?想象一下用C++03编写
的
数百个KLOC项目--我们应该在任何地方添加这个
std
::
move
吗?这个问题:
的
答案是: 作为一条金科玉律,当你按rvalue引用取某物时,您需要在
std
::
move</
浏览 0
提问于2014-05-29
得票数 47
回答已采纳
1
回答
在WebRTC VideoSendStreamParameters
的
构造函数中,为什么没有引用
传递
配置
参数
?
、
在WebRTC VideoSendStreamParameters
的
构造函数中,配置
参数
是
通过
一个
值
传递
的
(因此引入了一个复制开销),但是选项
参数
是
通过
一个引用
传递
的
。此外,config成员由
std
::
move
(config)初始化。我想知道他们为什么设计成这样。 : config(
std
::
move
浏览 3
提问于2021-11-26
得票数 0
回答已采纳
1
回答
是否有方法将某些unique_ptr右
值
引用
传递
到线程池
、
我使用
的
是C++11 (我不能使用更新
的
C++标准)。我不能将一个右
值
引用为unique_ptr
的
函数
传递
给我
的
线程池。使用test2函数,而不使用test1。
std
::cout << ms->c <<
std
::endl;
std
::this_thread::sleep_for(
std
::chrono::seconds(a))
浏览 0
提问于2021-02-24
得票数 0
4
回答
我应该为
std
::string使用rvalue编写构造函数吗?
、
、
、
、
我有一个简单
的
类:{ X (const
std
::string& s) : S(s) { }我最近读了一些关于rvalue
的
文章,我一直在想,我是否应该用rvalue为X编写构造函数,这样我就可以检测
std
::string类型
的
临时对象了?我认为它应该看起来像这样:据我所知,在支持C++11
的
编
浏览 0
提问于2012-05-31
得票数 14
回答已采纳
2
回答
std
::forward in非模板函数
、
有一些函数有rvalue
参数
。还有一个函数也有rvalue
参数
。. */} {} 我之所以使用
std
::
move
,是因为我们使用
std
::
move
将
参数
作为右
值
传递
。但我
的
同事说,
std
::forward在这里更合适,因为我们在这里转发(而不是移
浏览 0
提问于2017-09-05
得票数 1
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Python里参数是值传递还是引用传递?
【Python基础】Python「参数传递机制」:是值传递还是引用传递?
Java参数传递到底是按 值传递 还是 引用传递 ?
Go语言参数传递是传值还是传引用
Python参数的传递机制,能传递爱吗?
热门
标签
更多标签
云服务器
ICP备案
云直播
对象存储
腾讯会议
活动推荐
运营活动
广告
关闭
领券