Resultados de la búsqueda a petición "rvalue"

1 la respuesta

asignar a rvalue: ¿por qué esto compila?

En el siguiente ejemplo: class A { private: double content; public: A():content(0) {} A operator+(const A& other) { content += other.content; return *this; } void operator=(const A& other) { content = other.content; } };A es un contenedor simple ...

1 la respuesta

¿Por qué es pasar por valor y pasar por rvalue overload c ++ function call ambiguous?

Si tengo, void foo(Bar c); void foo(Bar&& c); foo(Bar());¿Por qué la llamada a 'foo' es ambigua? ¿No es Bar () en el argumento foo claramente un rValue?

1 la respuesta

¿Por qué std :: forward tiene dos sobrecargas?

Dadas las siguientes reglas de colapso de referencia T& & ->T&T&& & ->T&T& && ->T&T&& && ->T&&La tercera y cuarta regla implican queT(ref qualifer) && es la transformación de identidad, es decirT& se queda enT& yT&& se queda enT&&. ¿Por qué ...

1 la respuesta

¿Por qué no se promueve este valor a un valor como se especifica en la referencia?

losReferencia de óxido [https://doc.rust-lang.org/reference.html#lvalues-rvalues-and-temporaries]dice: El operando izquierdo de una asignación o expresión de asignación compuesta es un contexto de valor, al igual que el operando único de un ...

1 la respuesta

¿Es un miembro de datos de un objeto temporal un valor x en C ++ 11?

#include <vector> using namespace std; struct A { vector<int> coll; }; void f(const vector<int>&){} void f(vector<int>&&){} int main() { f(A().coll); // Is "A().coll" an xvalue? }¿C ++ 11 garantizaf(A().coll) llamarávoid f(vector<int>&&)?

1 la respuesta

¿La mejor forma para constructores? Pasar por valor o referencia?

Me pregunto la mejor forma para mis constructores. Aquí hay un código de muestra: class Y { ... } class X { public: X(const Y& y) : m_y(y) {} // (a) X(Y y) : m_y(y) {} // (b) X(Y&& y) : m_y(std::forward<Y>(y)) {} // (c) Y m_y; } Y f() { return ...

2 la respuesta

En OS X, el simple programa C ++ da resultados incorrectos (que son el resultado de las opciones de línea de comandos 'c ++ 03' vs 'c ++ 11')

Este sencillo programa (cuando se compila en Linux) dará CORRECTAMENTE dos respuestas diferentes en función de si está compilado con

2 la respuesta

¿Cuál es un ejemplo de una diferencia en el uso o comportamiento permitido entre un xvalue y un prvalue FOR objetos NO POD?

¿Qué son rvalues, lvalues, xvalues, glvalues ​​y prvalues? ofrece una buena visión general de la taxonomía de valores / valores, y una de las respuestas reci...

2 la respuesta

¿Es válido vincular referencias de valores no constantes a valores r en C ++ 11? (Modificado)

2 la respuesta

¿Los operadores de asignación generados implícitamente deben ser re-calificados?

El siguiente código compila sin problema en gcc 4.8.1: