rvalue-reference 相关问题

右值引用是C ++ 11中的一种新语言特性,表示对右值的引用。与参考折叠一起,它们用于实现和启用移动语义和完美转发。

使用RAII简化将对象传递给其他没有复制的对象

外部类objx; class Someclass {public:void bar(objx); objx om; }; void foo(){Someclass c; c.objx(o); bar(o); } void Someclass :: bar(objx&op){//将op保存在某些位置...

回答 1 投票 -1

如何获取返回的右值引用的地址?

#include int && func(){return 7;} int main(){std :: cout <

回答 1 投票 0

您是否会将C ++ RValue参考参数标记为const

我一直在切换Template Factory函数以使用(并理解)std :: forward以支持右值并移动语义。我通常用于模板类的样板工厂函数始终...

回答 2 投票 9

成员函数可以返回对右值对象的可修改左值引用吗?

我对此代码有些困惑:struct A {A&bar()&&; }; A&A :: bar()&& {std :: cout <

回答 2 投票 2

将右值引用绑定到左值引用类成员

我具有以下定义类Expression {public:virtual int validate()const = 0;虚拟std :: string to_string()const = 0; };常量类:public Expression {int value; ...

回答 1 投票 0

从C ++中的父对象构造子对象

我正在尝试从基类对象构造一个子类对象。我尝试了下面的代码。 A类{公开:A(); A(A && objectName)=默认值;虚拟虚空setint(int i);虚拟...

回答 1 投票 1


C ++-在右值引用前放置与号(&)是什么意思?

因此,我找到了Matrix类的赋值运算符函数的以下代码示例:Matrix &Matrix :: operator =(Matrix && M){

回答 1 投票 0

我应该实现右值推送功能,应该使用std :: move吗?

作为练习,我正在C ++ 11中实现一个堆栈类。这是相关的代码:template class stack {private:T * elements; std :: size_t容量; std :: size_t计数; ...

回答 1 投票 0

右值引用与“ && &&”合并的示例

[拥有模板和引用后,可以根据某些规则使用T&&&之类的类型折叠起来。基本上,除了T && ......>

回答 1 投票 2

为什么这些代码仍然使用左值函数?

这些天,我目前正在研究C ++的左值和右值。我在下面的代码中有些困惑。类Test {public:Test(){}显式Test(int _i):i(_i){} void doSomething()&{...

回答 1 投票 0

无法将右值参考函数与GCC匹配

[尝试使用右值引用时,我从GCC收到一个错误(clang不会产生错误)。为什么编译器会产生错误?这是GCC中的错误吗? “简化的”错误是:|在...

回答 1 投票 3

具有std :: move函数签名的传递向量

考虑下面的代码void foo(std :: vector v){//在这里做些事情} //调用函数vector v1 = {1,2,3}; foo(std :: move(v1));我的问题是,函数foo ...

回答 2 投票 3

为什么枚举变量在这里是右值?

示例:typedef枚举颜色{红,绿,蓝}颜色; void func(unsigned int&num){num ++; } int main(){颜色clr =红色; func(clr);返回0; }我得到了...

回答 2 投票 6

为什么枚举变量在这里是右值?

我在下面编写示例代码:typedef枚举颜色{红色,绿色,蓝色}颜色; void func(unsigned int&num){num ++; } int main(){颜色clr =红色; func(clr);返回0; ...

回答 1 投票 0

Herb Sutter在C ++ Con 2014演讲中的完美转发器

[Herb Sutter在C ++ Con 2014上的演讲中,他讨论了价值传递,参考传递等等。在这个人为的例子中,他提出的一种技术是:使用命名空间std; ...

回答 2 投票 3

如何根据对象是否为右值引用路由到不同的实现? [重复]

例如,我有一个名为MyClass的类,并从中创建一个实例:auto obj = MyClass()我有两种方法来调用其方法。选项1:直接调用该方法obj.method()选项2:强制转换...

回答 1 投票 0

C ++右值引用请求

我与右值引用混淆,is_rvalue_reference :: value表示a变量是右值引用,但不能将其传递给hello(int &&)函数。 #include

回答 2 投票 1

了解'this'或其他参数是否是右值

假设我们有Base类及其成员函数Base doSomething(const Base&other)。我想知道如何确定此对象或其他对象是否为右值,例如,我需要一些...

回答 3 投票 -1

是否有合理的替代方法来处理超载和完美的转发?

如果我通过复制/移动接受一个值,然后对其进行移动,则似乎要复制LValues并移动RValues。在两种情况下,此代码都能正确有效地执行吗?是否合理...

回答 1 投票 3

© www.soinside.com 2019 - 2024. All rights reserved.