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

3 la respuesta

Sobre cómo reconocer la referencia de Rvalue o Lvalue y la regla if-it-has-a-name

Estaba leyendo el libro de Thomas Beckerartículo [http://thbecker.net/articles/rvalue_references/section_05.html]en referencia de valor y su uso. Allí define lo que llamasi-tiene-un-nombre regla: Las cosas que se declaran como referencia de ...

2 la respuesta

implementación de estudio visual de "mover semántica" y "referencia de valor"

Encontré un video de Youtube en c ++ 11 concurrencia (parte 3) y el siguiente código, que compila y genera el resultado correcto en el video. Sin embargo, recibí un error de compilación de este código usando Visual Studio 2012. El compilador se ...

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 ...

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 ...

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; ...

1 la respuesta

¿Pasar de * esto en un método rvalue?

En C ++ 11, los métodos se pueden sobrecargar si la expresión que denota el objeto en el que se llama el método es un valor l o un valor r. Si regreso*this desde un método llamado a través de un valor r, ¿necesito explícitamentemove de*this ¿o ...

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 ...

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 ...

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") ...

6 la respuesta

Ventajas de usar adelante

En reenvío perfecto,std::forward se usa para convertir las referencias rvalue nombradast1 yt2 a referencias rvalue sin nombre. ¿Cuál es el propósito de hacer eso? ¿Cómo afectaría eso a la función llamada?inner si nos vamost1 & t2 ...