Déclarer des types optionnels
Ajoutez ? pour autoriser l'absence d'une valeur.
Déclarer des types optionnels est une leçon Zig Academy gratuite sur CoddyKit. Ceci est la leçon 1 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.
Parfois, il n’y a rien
Les programmes réels rencontrent des situations où une valeur est tout simplement absente : une recherche n’aboutit pas ou un champ est vide. Zig modélise cette absence de manière sûre et intentionnelle.
Le type optionnel
Un type optionnel peut contenir soit une valeur réelle d’un certain type, soit la valeur spéciale null, qui signifie qu’il n’y a rien.
Ajoutez un point d’interrogation au début
Vous rendez n’importe quel type optionnel en écrivant ? devant celui-ci. Ainsi, ?i32 est un entier qui peut aussi être null.
var age: ?i32 = null;Une valeur trouve naturellement sa place
Un optionnel peut tout aussi bien contenir une valeur normale. Vous affectez 42 à un ?i32 exactement comme vous l’affecteriez à un i32 ordinaire.
var age: ?i32 = 42;null représente l’état vide
Le mot-clé null est le littéral qui signifie qu’il n’y a aucune valeur. Seuls les types optionnels peuvent le contenir.
const missing: ?u8 = null;Les types non optionnels refusent null
Un i32 ordinaire ne peut jamais être null. Le compilateur vous en empêche : l’absence reste ainsi visible dans le type, au lieu de se dissimuler sous la forme d’une valeur incorrecte.
var n: i32 = null; // error: expected i32Rendez le type de votre choix optionnel
Les optionnels ne servent pas uniquement aux nombres. Vous pouvez rendre un bool, une structure, une tranche ou n’importe quel type optionnel en ajoutant le point d’interrogation.
var found: ?bool = null;L’inférence fonctionne toujours
Affectez une valeur optionnelle et Zig inférera le type optionnel pour vous : vous n’avez donc pas toujours besoin de l’écrire explicitement.
const score: ?u32 = 10;Pourquoi ne pas utiliser une valeur sentinelle ?
En C, on simule l’absence avec des valeurs comme -1 ou un pointeur null. Zig vous fournit un véritable type optionnel, afin que l’absence ne puisse pas être confondue avec une donnée.
L’absence fait partie du type
Comme ? se trouve directement dans le type, toute personne qui lit votre code voit immédiatement qu’une valeur peut manquer et doit être traitée.
Commencer par null
Il est courant d’initialiser un optionnel à null, puis de le remplir plus tard, lorsque vous disposez effectivement de la valeur à stocker.
var result: ?[]const u8 = null;Vérification rapide
Comment déclarer un u32 qui peut être absent ?
Récapitulatif
Vous avez découvert les optionnels : écrivez ? devant un type pour autoriser une valeur réelle ou null. L’absence réside désormais dans le type, de façon claire et visible. ❓
Questions Fréquemment Posées
La leçon « Déclarer des types optionnels » est-elle gratuite ?
Oui — le texte complet de « Déclarer des types optionnels » 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 « Déclarer des types optionnels » ?
Ajoutez ? pour autoriser l'absence d'une 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 1 sur 4.
Combien de temps prend la leçon « Déclarer des types optionnels » ?
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
- Déclarer des types optionnels
- Déballer en toute sécurité avec if et orelse
- Pointeurs optionnels et ?*T
- null ou undefined