¿Qué es el reenvío perfecto en C ++?
¿Qué es el reenvío perfecto en C ++?

Video: ¿Qué es el reenvío perfecto en C ++?

Video: ¿Qué es el reenvío perfecto en C ++?
Video: 79. Programación en C++ || Funciones || Recursividad - Factorial de un número 2024, Diciembre
Anonim

Anuncio de la sesión de cotizaciones: Aventuras en Reenvío perfecto : Perfeccionando reenvío es una importante C ++ 0x técnica construida sobre referencias rvalue. Permite que la semántica de movimientos se aplique automáticamente, incluso cuando el origen y el destino de un movimiento están separados por llamadas de función intermedias.

Teniendo esto en cuenta, ¿qué es STD adelante?

std :: hacia adelante Esta es una función auxiliar para permitir el reenvío perfecto de argumentos tomados como referencias rvalue a tipos deducidos, preservando cualquier semántica de movimiento potencial involucrada.

En segundo lugar, ¿qué es lvalue y rvalue en C ++? En C ++ un lvalor es algo que apunta a una ubicación de memoria específica. Por otro lado, un rvalue es algo que no apunta a ningún lado. En general, rvalues son temporales y de corta duración, mientras que lvalores vivir una vida más larga ya que existen como variables. Una variable tiene una ubicación de memoria específica, por lo que es una lvalor.

Del mismo modo, ¿qué es la referencia de reenvío?

2.11 Reenviar referencias El uso de un identificador antes de su declaración se denomina referencia directa , y da como resultado un error, excepto en los siguientes casos: Cuando una instrucción goto se refiere a una etiqueta de instrucción antes de la declaración de la etiqueta. Cuando se utiliza una etiqueta de estructura, unión o enumeración antes de declararse.

¿Qué es una referencia universal?

Resumen. En una declaración de tipo, "&&" indica un valor r referencia o un referencia universal - a referencia que puede resolverse en un valor l referencia o un rvalue referencia . Referencias universales siempre tenga la forma T && para algún tipo T deducido.