0Pricing
Zig Academy · Lección

inline for y bucles desenrollados

Itere en tiempo de compilación.

inline for y bucles desenrollados es una lección gratuita de Zig Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Zig Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Zig Academy incluye 4 lecciones en total.

Un bucle que se ejecuta durante la compilación

Un inline for es un bucle que el compilador desenrolla durante la compilación. En lugar de iterar durante la ejecución, copia el cuerpo para cada elemento. 🔁

La palabra clave inline

Coloque inline delante de for para pedir a Zig que expanda el bucle durante la compilación. El número de iteraciones debe conocerse en ese momento.

inline for (items) |item| {}

Desenrollar significa copiar el cuerpo

El desenrollado sustituye el bucle por una copia de su cuerpo para cada elemento. En la ejecución no queda ningún contador de bucle, solo código lineal.

Recorrer una tupla conocida

Un uso habitual es recorrer una tupla cuyos campos tienen tipos diferentes. Cada copia desenrollada puede tratar su elemento con el tipo adecuado.

inline for (.{ 1, true, 3.0 }) |v| {}

El índice puede ser comptime

Con un inline for, el índice del bucle es un valor de compilación en cada iteración, por lo que puede utilizarlo donde solo se permiten constantes.

inline for (list, 0..) |v, i| {}

Cada iteración puede ser diferente

Como el cuerpo se duplica, cada copia puede utilizar un tipo o valor diferente. Un bucle for normal no puede hacer eso.

Reflejar los campos de una struct

Combine inline for con la reflexión de tipos para visitar cada campo de una struct durante la compilación y generar código adaptado para cada uno.

inline for (fields) |field| {}

Cambiar tamaño de código por velocidad

El desenrollado elimina la sobrecarga del bucle, pero aumenta el tamaño del binario. Use inline for con cantidades pequeñas y fijas cuando la aceleración lo justifique.

La cantidad debe conocerse

Un inline for necesita una longitud que el compilador pueda ver. Un slice de tiempo de ejecución cuya longitud se desconoce no puede desenrollarse.

También existe inline while

Zig también ofrece inline while. Desenrolla un bucle while durante la compilación cuando la condición puede resolverse en ese momento.

Limítelo a cantidades pequeñas

Use inline for cuando la cantidad de elementos sea pequeña y fija. Para longitudes grandes o desconocidas, un bucle for normal mantiene reducido el binario.

Comprobación rápida

¿Qué le pide al compilador de Zig añadir inline a un bucle for?

Resumen

Un inline for desenrolla durante la compilación un bucle cuya longitud se conoce, permite que cada copia use su propio tipo y elimina la sobrecarga del bucle en tiempo de ejecución. 🎯

Preguntas frecuentes

¿La lección «inline for y bucles desenrollados» es gratis?

Sí — el texto completo de «inline for y bucles desenrollados» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Zig Academy, actualiza a CoddyKit PRO. El curso de Zig Academy incluye 4 lecciones en total.

¿Qué aprenderé en «inline for y bucles desenrollados»?

Itere en tiempo de compilación. Practicas Zig Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Zig Academy?

No se requiere experiencia previa. Zig Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «inline for y bucles desenrollados»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Zig Academy?

Sí. Cada lección de Zig Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Tiempo de compilación frente a tiempo de ejecución
  2. Parámetros y valores comptime
  3. Los tipos son valores comptime
  4. inline for y bucles desenrollados
← Volver a Zig Academy