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

1 la respuesta

¿Por qué C ++ no mueve las referencias de valor de construcción por defecto? [duplicar

Esta pregunta ya tiene una respuesta aquí: @Rvalue Reference se trata como un Lvalue? [/questions/28483250/rvalue-reference-is-treated-as-an-lvalue] 4 respuestase llama al constructor de referencia @Lvalue en lugar del constructor de referencia ...

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>&&)?

2 la respuesta

No se puede vincular lvalue a rvalue reference

Tengo este fragmento de código de prueba de C ++, #include <vector> class A { std::vector<int> x; public: A(std::vector<int>&& _x) : x(_x) {} }; class B { A a; public: B(std::vector<int>&& _x) : a(/*move(*/_x/*)*/) {} };Estoy pasando_x a B como ...

4 la respuesta

vite el crecimiento exponencial de referencias constantes y referencias de valor en el constructor

Estoy codificando algunas clases con plantillas para una biblioteca de aprendizaje automático, y me enfrento a este problema muchas veces. Estoy utilizando principalmente el patrón de política, donde las clases reciben como políticas de argumento ...

1 la respuesta

inicialización no válida de referencia no constante de un valor r

Entonces tengo la siguiente función: void scan(std::istream& is, Handler& h);Quiero llamarlo de diferentes maneras, como: scan(std::cin, Handler()); scan(std::ifstream("myfile"), myhandler);El compilador se queja destd::ifstream("myfile") ...

3 la respuesta

¿Puedo usar rvalue reference para temporal? ¿Es un comportamiento indefinido o no?

Actualizando la pregunta¿Por qué estos dos ejemplos de referencias de valor tienen un comportamiento diferente? [https://stackoverflow.com/questions/35315472/why-this-two-rvalue-references-examples-have-different-behavior] : Código fuente: int ...

3 la respuesta

¿Por qué las variables de referencia de valores no son rvalue?

Digamos que tengo dos sobrecargas de una función.f. f(T&&) yf(T&). Luego en el cuerpo deg: g(T&& t) { f(t);} la sobrecargaf(T&) se llamará porque t se considera un valor l. Esto es muy sorprendente para mí. Cómo una función con firmaf(T&&) no ...

1 la respuesta

Llamada ambigua con función de referencia de valor r sobrecargada

Tengo una clase con las siguientes declaraciones: class IcoSphere { [...] private: int _addVertex(const glm::vec3 &p); int addVertex(glm::vec3 p); int addVertex(const glm::vec3 &&p); [...] };Entonces, llamo 'addVertex' así: IcoSphere sphere; ...

4 la respuesta

Rvalue Reference se trata como un Lvalue?

Publiqué esta respuesta:https://stackoverflow.com/a/28459180/2642059 [https://stackoverflow.com/a/28459180/2642059]Que contiene el siguiente código: void foo(string&& bar){ string* temp = &bar; cout << *temp << " @:" << temp << endl; }Esbar ¿Un ...

3 la respuesta

¿Cómo es posible obtener una referencia a un valor r?

He usadostd::move ystd::forward en C ++. Mi pregunta es: ¿cómo implementan realmente estas funciones la biblioteca estándar? Si un valor es algo de lo que puede obtener la dirección, y un valor no es exclusivamente un valor, ¿cómo puede ...