Structures anonymes et tuples
Créez des valeurs regroupées ponctuellement.
Structures anonymes et tuples est une leçon Zig Academy gratuite sur CoddyKit. Ceci est la leçon 4 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, vous n’en avez besoin qu’une seule fois
Tous les regroupements ne méritent pas un type nommé. Zig vous permet d’écrire une structure anonyme directement à l’endroit où vous l’utilisez.
Il suffit de supprimer le nom
Un littéral de structure anonyme commence par .{ et répertorie les champs par leur nom, sans écrire de type devant.
const p = .{ .x = 1, .y = 2 };Utiliser les champs normalement
Vous lisez les champs de la même manière que ceux d’une structure nommée, avec un point. Ici, p.x vaut 1 et p.y vaut 2.
const sum = p.x + p.y;Convertir vers un type nommé
Un littéral anonyme peut être converti implicitement en structure nommée lorsque le type cible est connu, par exemple pour une valeur de retour.
fn make() Point {
return .{ .x = 0, .y = 0 };
}Les tuples n’ont pas de noms de champs
Omettez les noms de champs pour obtenir un tuple : une structure anonyme dont les champs sont accessibles par position.
const pair = .{ 1, 2 };Indexer un tuple
Accédez à un champ d’un tuple par son numéro, écrit comme un nom de champ. Ainsi, pair[0] vaut 1 et pair[1] vaut 2.
const first = pair[0];Les types mixtes sont acceptés
Chaque champ d’un tuple peut avoir un type différent. Un même littéral peut contenir à la fois un entier, un booléen et une chaîne.
const row = .{ 42, true, "hi" };Les tuples ont une longueur
Un tuple reste une structure, il possède donc une valeur len déterminée à la compilation, que vous pouvez lire avec tuple.len.
const n = row.len; // 3Idéal pour les arguments de print
std.debug.print prend un tuple de valeurs à formater. Le .{} que vous transmettez est un tuple anonyme.
std.debug.print("{} {}\n", .{ 1, 2 });Parcourir un tuple
Comme la longueur est connue à la compilation, vous pouvez parcourir les champs d’un tuple avec une boucle for inline.
inline for (row) |field| {
_ = field;
}Nommé ou positionnel
Choisissez une structure anonyme lorsque les noms apportent de la clarté, et un tuple lorsqu’un petit groupe ordonné suffit.
Vérification rapide
Quelle est la différence entre un tuple et une structure anonyme nommée ?
Récapitulatif
Vous avez découvert les structures anonymes et les tuples : .{ .x = 1 } est un littéral nommé intégré au code, tandis que .{ 1, 2 } est un tuple positionnel. 📦
Questions Fréquemment Posées
La leçon « Structures anonymes et tuples » est-elle gratuite ?
Oui — le texte complet de « Structures anonymes et tuples » 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 « Structures anonymes et tuples » ?
Créez des valeurs regroupées ponctuellement. 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 4 sur 4.
Combien de temps prend la leçon « Structures anonymes et tuples » ?
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 structures et des champs
- Méthodes et paramètre self
- Valeurs par défaut des champs
- Structures anonymes et tuples