Inférence de type ou types explicites
Laissez Zig déduire les types ou annotez-les vous-même.
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_intQuand 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. 🎯
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
- const pour les valeurs qui ne changent jamais
- var pour un état modifiable
- Inférence de type ou types explicites
- undefined et mémoire non initialisée