Los tipos son valores comptime
Trate un tipo como cualquier otro valor.
Los tipos son valores comptime es una lección gratuita de Zig Academy en CoddyKit. Esta es la lección 3 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 tipo es simplemente un valor
En Zig, un tipo no es una sintaxis mágica: es un valor normal que puede almacenar, pasar y devolver. Simplemente existe solo durante la compilación. 🧠
El tipo de un tipo es type
Todos los tipos tienen el tipo type. Por tanto, u8 es un valor cuyo tipo es type, igual que 5 es un valor cuyo tipo es un entero.
const T: type = u8;Asociar un tipo a una const
Puede asignar un nombre a un tipo mediante una constante. Aquí, Number se convierte en otro nombre para i32 que puede utilizar donde se espere un tipo.
const Number = i32;
const x: Number = 7;Pasar un tipo a una función
Una función puede recibir un tipo como parámetro comptime. El argumento es un valor real que se evalúa mientras se compila el programa.
fn sizeOf(comptime T: type) usize {
return @sizeOf(T);
}Devolver un tipo desde una función
Como los tipos son valores, una función puede devolver uno. Su tipo de retorno es simplemente type, y el cuerpo produce un tipo como resultado.
fn Pair() type {
return struct { a: u8, b: u8 };
}Así funcionan los genéricos
Pasar y devolver tipos es la base de los genéricos de Zig. No existe una sintaxis genérica especial: solo valores de tipo que circulan.
Los tipos solo existen durante la compilación
Un valor de tipo type solo existe durante la compilación. No puede almacenar un tipo en una variable de ejecución ni leerlo de la entrada.
Inspeccionar un tipo con funciones integradas
Las funciones integradas tratan un tipo como datos. @sizeOf recibe un valor de tipo y devuelve cuántos bytes ocupa una instancia de ese tipo.
const bytes = @sizeOf(u32);Comparar tipos por igualdad
Como los tipos son valores, puede compararlos durante la compilación. La expresión T == u8 es verdadera únicamente cuando T es exactamente u8.
Elegir un tipo durante la compilación
Puede ramificar según un tipo y elegir otro, todo durante la compilación. Esto permite que una función adapte su comportamiento al tipo que recibe.
Asignar un nombre al tipo devuelto por una función
Como una función puede devolver un tipo, puede asociar ese resultado a una constante y utilizarlo después como cualquier nombre de tipo integrado.
const Point = Pair();
const p: Point = .{ .a = 1, .b = 2 };Comprobación rápida
En Zig, ¿cuál es el tipo del propio tipo u8?
Resumen
En Zig, los tipos son valores comptime de tipo type. Puede asignarles nombres, pasarlos, devolverlos y compararlos; así es exactamente como se construyen los genéricos. 🎯
Preguntas frecuentes
¿La lección «Los tipos son valores comptime» es gratis?
Sí — el texto completo de «Los tipos son valores comptime» 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 «Los tipos son valores comptime»?
Trate un tipo como cualquier otro valor. 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 3 de 4.
¿Cuánto tiempo toma la lección «Los tipos son valores comptime»?
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
- Tiempo de compilación frente a tiempo de ejecución
- Parámetros y valores comptime
- Los tipos son valores comptime
- inline for y bucles desenrollados