Saltar al contenido

¿Qué es más eficiente, i++ o ++i?

Revisamos de forma exhaustivamente cada una de las reseñas de nuestro sitio web con el objetivo de enseñarte en todo momento información más veraz y certera.

Solución:

i++:

  • crear una copia temporal de i
  • incremento yo
  • devolver la copia temporal

++yo:

  • incremento yo
  • vuelvo yo

Con las optimizaciones activadas, es muy posible que el ensamblaje resultante sea idéntico; sin embargo, ++i es más eficiente.

editar: tenga en cuenta que en C ++, puedo ser cualquier objeto que admita el prefix y postfijo ++ operador. Para objetos complejos, el costo de la copia temporal no es despreciable.

Buscaría en otra parte el potencial de optimización.

La eficiencia no debería ser su preocupación: es significado. los dos son no lo mismo, a menos que sean independientes: uno opera antes del uso del valor, el otro post.

ent yo; yo = 1; cout << i++; //Devuelve 1

ent yo; yo = 1; cout << ++i; //Devuelve 2

Cuando el significado no es importante, la mayoría de los compiladores traducirán tanto ++i como i++ (por ejemplo, en un bucle for) al mismo código de máquina/VM.

Sección de Reseñas y Valoraciones

Nos encantaría que puedieras dar difusión a esta crónica si te valió la pena.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *