Zig Academy · Leçon

Les types sont des valeurs comptime

Traitez un type comme n'importe quelle autre valeur.

Leçon 3 sur 413 étapes

Les types sont des valeurs comptime est une leçon Zig Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Zig Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Zig Academy comprend 4 leçons au total.

Un type n’est qu’une valeur

Dans Zig, un type n’est pas une syntaxe magique : c’est une valeur ordinaire que vous pouvez stocker, transmettre et renvoyer. Il existe simplement uniquement lors de la compilation. 🧠

Le type d’un type est type

Chaque type possède le type type. Ainsi, u8 est une valeur dont le type est type, tout comme 5 est une valeur dont le type est un entier.

const T: type = u8;

Associer un type à une const

Vous pouvez nommer un type avec une constante. Ici, Number devient un autre nom pour i32, utilisable partout où un type est attendu.

const Number = i32;
const x: Number = 7;

Transmettre un type à une fonction

Une fonction peut accepter un type comme paramètre comptime. L’argument est une véritable valeur, évaluée pendant la compilation du programme.

fn sizeOf(comptime T: type) usize {
    return @sizeOf(T);
}

Renvoyer un type depuis une fonction

Comme les types sont des valeurs, une fonction peut en renvoyer un. Son type de retour est simplement type, et son corps produit un type comme résultat.

fn Pair() type {
    return struct { a: u8, b: u8 };
}

C’est ainsi que fonctionnent les génériques

Transmettre et renvoyer des types constitue le fondement des génériques de Zig. Il n’existe pas de syntaxe générique spéciale : ce sont simplement des valeurs de type qui circulent.

Les types n’existent que lors de la compilation

Une valeur de type type n’existe que pendant la compilation. Vous ne pouvez pas stocker un type dans une variable d’exécution ni en lire un depuis une entrée.

Examiner un type avec les fonctions intégrées

Les fonctions intégrées traitent un type comme une donnée. @sizeOf prend une valeur de type et renvoie le nombre d’octets occupés par une instance de ce type.

const bytes = @sizeOf(u32);

Comparer des types pour vérifier leur égalité

Puisque les types sont des valeurs, vous pouvez les comparer lors de la compilation. L’expression T == u8 est vraie uniquement lorsque T est exactement u8.

Choisir un type lors de la compilation

Vous pouvez effectuer un branchement selon un type et en choisir un autre, entièrement pendant la compilation. Une même fonction peut ainsi adapter son comportement au type qu’elle reçoit.

Nommer un type à partir du résultat d’une fonction

Comme une fonction peut renvoyer un type, vous pouvez lier ce résultat à une constante, puis l’utiliser comme n’importe quel nom de type intégré.

const Point = Pair();
const p: Point = .{ .a = 1, .b = 2 };

Vérification rapide

Dans Zig, quel est le type du type u8 lui-même ?

Récapitulatif

Dans Zig, les types sont des valeurs comptime de type type. Vous pouvez les nommer, les transmettre, les renvoyer et les comparer : c’est exactement ainsi que les génériques sont construits. 🎯

Gratuit pour commencer

Apprends Zig avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
30
Leçons
120

Questions Fréquemment Posées

La leçon « Les types sont des valeurs comptime » est-elle gratuite ?

Oui — le texte complet de « Les types sont des valeurs comptime » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Zig Academy, passe à CoddyKit PRO. Le cours Zig Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Les types sont des valeurs comptime » ?

Traitez un type comme n'importe quelle autre valeur. Tu pratiques Zig Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Zig Academy ?

Aucune expérience préalable n'est requise. Zig Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Les types sont des valeurs comptime » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Zig Academy ?

Oui. Chaque leçon Zig Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. À la compilation ou à l'exécution
  2. Paramètres et valeurs comptime
  3. Les types sont des valeurs comptime
  4. inline for et boucles déroulées
← Retour à Zig Academy