Fonctions pub et visibilité
Rendez les fonctions accessibles entre plusieurs fichiers.
Fonctions pub et visibilité 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.
Les fichiers sont des modules
Dans Zig, chaque fichier source est son propre module. Ce qu’il partage avec les autres fichiers dépend des règles de visibilité. 📦
Privé par défaut
Une fonction ordinaire est privée dans son fichier. Les autres fichiers ne peuvent pas l’appeler, ce qui protège les fonctions utilitaires internes.
fn helper() void {
// only this file can call me
}pub la rend publique
Ajoutez le mot-clé pub pour exposer une fonction afin que les autres fichiers puissent l’importer et l’appeler dans votre projet.
pub fn greet() void {
std.debug.print("Hi!\n", .{});
}L’importation l’intègre
Un autre fichier utilise @import pour charger votre module, puis accède aux noms publics par l’intermédiaire de la valeur renvoyée.
const utils = @import("utils.zig");
utils.greet();Seuls les noms pub sont accessibles
Grâce à cette importation, vous ne pouvez appeler que les noms publics. Les fonctions privées restent invisibles et ne peuvent donc pas être utilisées à mauvais escient.
Pourquoi main a besoin de pub
C’est pourquoi main est déclarée pub : l’environnement d’exécution se trouve à l’extérieur de votre fichier et doit pouvoir atteindre le point d’entrée.
pub fonctionne avec autre chose que fn
Le mot-clé pub expose également les constantes, les types et les variables, ce qui vous permet de définir une interface publique claire pour un module.
pub const version = "1.0.0";Concevoir une petite API
Déclarez public uniquement ce dont les appelants ont réellement besoin. Garder les fonctions utilitaires privées vous donne une petite interface stable à maintenir.
L’encapsulation réduit les erreurs
Masquer les détails internes, c’est l’encapsulation. Avec moins d’éléments exposés, vous pouvez modifier l’implémentation sans perturber les autres fichiers.
Aucun fichier d’en-tête nécessaire
Contrairement au C, Zig n’a pas besoin de fichiers d’en-tête. Importer un fichier vous donne directement accès à ses déclarations publiques, sans duplication.
La visibilité est vérifiée à la compilation
Zig applique la visibilité lors de la compilation. Appeler une fonction privée depuis l’extérieur de son fichier échoue simplement à la compilation.
Vérification rapide
Vous avez écrit une fonction dans math.zig, mais un autre fichier ne peut pas l’appeler. Qu’est-ce qui manque probablement ?
Récapitulatif
Les fonctions sont privées dans leur fichier jusqu’à l’ajout de pub. Exposez uniquement ce dont les appelants ont besoin, importez avec @import et ignorez complètement les fichiers d’en-tête. 🎯
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 « Fonctions pub et visibilité » est-elle gratuite ?
Oui — le texte complet de « Fonctions pub et visibilité » 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 « Fonctions pub et visibilité » ?
Rendez les fonctions accessibles entre plusieurs fichiers. 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 « Fonctions pub et visibilité » ?
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
- Syntaxe des fonctions et types de retour
- Passage de valeurs ou de références
- Fonctions pub et visibilité
- Récursivité et retours multiples