Zig Academy · Leçon

Inférence de type ou types explicites

Laissez Zig déduire les types ou annotez-les vous-même.

Leçon 3 sur 413 étapes

Inférence de type ou types explicites 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.

Deux façons de typer

Lorsque vous liez une valeur, Zig peut déterminer son type pour vous, ou vous pouvez l’écrire explicitement. Les deux approches reposent sur le système de types statique et strict de Zig.

La déduction pour les valeurs évidentes

Si la valeur rend le type évident, laissez Zig le déduire. const name = "Ada" représente clairement du texte, aucune annotation n’est donc nécessaire.

const name = "Ada";

Annoter explicitement

Pour indiquer vous-même un type, écrivez un deux-points, puis le type après le nom. C’est ainsi que vous imposez une largeur entière précise.

const age: u8 = 30;

Type entier par défaut

Un littéral entier déduit devient un comptime_int jusqu’à son utilisation. Lorsqu’il est affecté à un emplacement, Zig le convertit vers la largeur nécessaire.

const small = 7; // comptime_int

Quand une annotation est obligatoire

Parfois, la valeur seule ne suffit pas. Une var initialisée à 0 a besoin d’un type explicite pour que Zig sache s’il s’agit d’un u8 ou d’un i64.

var counter: u32 = 0;

Les nombres flottants demandent aussi de l’attention

Un 3.14 nu est un comptime_float. Annotez-le pour choisir f32 ou f64 lorsque la précision et la taille mémoire vous importent réellement.

const ratio: f32 = 3.14;

La déduction améliore la lisibilité

Lorsque le type est évident d’après le contexte, l’omettre rend les lignes plus claires. Annotez-le uniquement si cela apporte une réelle précision ou si c’est obligatoire.

La conversion suit la cible

Affectez 5 à un emplacement u16 et le littéral s’y adapte discrètement. Zig effectue une conversion implicite sûre vers le type déclaré lorsque c’est possible.

const n: u16 = 5;

Explicite aux frontières

Dans les signatures de fonctions et les structures de données, les types sont toujours explicites. La déduction est une commodité locale, pas un moyen d’éviter les déclarations.

fn area(w: u32, h: u32) u32 {}

Aucune conversion surprenante

Zig ne transformera pas silencieusement un nombre flottant en entier pour vous. Des types incompatibles provoquent une erreur, ce qui rend le comportement numérique prévisible.

Une habitude simple

Déduisez le type lorsque la valeur parle d’elle-même ; annotez-le lorsque le type constitue l’information dont le lecteur a besoin. La clarté doit guider votre choix.

Vérification rapide

Vous écrivez var counter = 0; et Zig se plaint. Pourquoi vous demande-t-il davantage d’informations ?

Récapitulatif

Vous avez vu que Zig peut déduire un type à partir d’une valeur claire, ou que vous pouvez l’annoter avec un deux-points. Laissez la clarté et les cas obligatoires déterminer votre choix. 🎯

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 « Inférence de type ou types explicites » est-elle gratuite ?

Oui — le texte complet de « Inférence de type ou types explicites » 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 « Inférence de type ou types explicites » ?

Laissez Zig déduire les types ou annotez-les vous-même. 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 « Inférence de type ou types explicites » ?

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. const pour les valeurs qui ne changent jamais
  2. var pour un état modifiable
  3. Inférence de type ou types explicites
  4. undefined et mémoire non initialisée
← Retour à Zig Academy