ฟังก์ชัน pub และการมองเห็น
เปิดเผยฟังก์ชันข้ามไฟล์
ฟังก์ชัน pub และการมองเห็น เป็นบทเรียน Zig Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Zig Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Zig Academy มีบทเรียนทั้งหมด 4 บทเรียน
ไฟล์คือโมดูล
ใน Zig แหล่งไฟล์ทุกไฟล์เป็นโมดูลของตัวเอง สิ่งที่ไฟล์แบ่งปันกับไฟล์อื่นจะถูกควบคุมด้วยกฎการมองเห็น 📦
เป็นส่วนตัวโดยปริยาย
ฟังก์ชันธรรมดาจะเป็นส่วนตัวภายในไฟล์ของตน ไฟล์อื่นไม่สามารถเรียกใช้ได้ ทำให้ตัวช่วยภายในถูกซ่อนไว้อย่างปลอดภัย
fn helper() void {
// only this file can call me
}pub ทำให้เป็นสาธารณะ
เพิ่มคีย์เวิร์ด pub เพื่อเปิดเผยฟังก์ชัน ทำให้ไฟล์อื่นนำเข้าและเรียกใช้ฟังก์ชันนั้นได้ทั่วทั้งโปรเจกต์
pub fn greet() void {
std.debug.print("Hi!\n", .{});
}การนำเข้าดึงโมดูลเข้ามา
อีกไฟล์หนึ่งใช้ @import เพื่อโหลดโมดูลของคุณ จากนั้นเข้าถึงชื่อสาธารณะผ่านค่าที่ส่งคืนมา
const utils = @import("utils.zig");
utils.greet();เข้าถึงได้เฉพาะชื่อที่เป็น pub
ผ่านการนำเข้านั้น คุณเรียกใช้ได้เฉพาะชื่อที่เป็นสาธารณะ ฟังก์ชันส่วนตัวยังคงมองไม่เห็น จึงไม่สามารถนำไปใช้ผิดวิธีได้
เหตุใด main จึงต้องเป็น pub
นี่คือเหตุผลที่ main ถูกเขียนเป็น pub: ระบบรันไทม์อยู่นอกไฟล์ของคุณและต้องเข้าถึงจุดเริ่มต้นของโปรแกรมได้
pub ใช้ได้มากกว่า fn
คีย์เวิร์ด pub ยังเปิดเผยค่าคงที่ ชนิดข้อมูล และตัวแปรได้ด้วย ทำให้คุณสร้างส่วนติดต่อสาธารณะที่เรียบร้อยให้โมดูลได้
pub const version = "1.0.0";ออกแบบส่วนติดต่อขนาดเล็ก
กำหนดให้เฉพาะสิ่งที่ผู้เรียกจำเป็นต้องใช้จริงเป็นสาธารณะ การเก็บฟังก์ชันช่วยไว้เป็นส่วนตัวทำให้คุณมีส่วนติดต่อขนาดเล็กและคงที่ที่ดูแลได้ง่าย
การห่อหุ้มช่วยลดข้อผิดพลาด
การซ่อนส่วนภายในเรียกว่าการห่อหุ้ม เมื่อเปิดเผยส่วนต่าง ๆ น้อยลง คุณก็เปลี่ยนรายละเอียดการทำงานภายในได้โดยไม่ทำให้ไฟล์อื่นเสียหาย
ไม่ต้องใช้ไฟล์ส่วนหัว
ต่างจาก C ตรงที่ Zig ไม่ต้องใช้ไฟล์ส่วนหัว การนำเข้าไฟล์จะให้คุณใช้คำประกาศสาธารณะของไฟล์นั้นได้โดยตรง โดยไม่ต้องทำซ้ำ
การมองเห็นตรวจสอบขณะคอมไพล์
Zig บังคับใช้การมองเห็นขณะคอมไพล์ การเรียกฟังก์ชันส่วนตัวจากนอกไฟล์จะทำให้การคอมไพล์ล้มเหลวทันที
ตรวจสอบอย่างรวดเร็ว
คุณเขียนฟังก์ชันไว้ใน math.zig แต่ไฟล์อื่นเรียกใช้ไม่ได้ สิ่งใดน่าจะขาดหายไปมากที่สุด
ทบทวน
ฟังก์ชันจะเป็นส่วนตัวภายในไฟล์จนกว่าคุณจะเพิ่ม pub เปิดเผยเฉพาะสิ่งที่ผู้เรียกจำเป็นต้องใช้ นำเข้าด้วย @import และไม่ต้องใช้ไฟล์ส่วนหัวเลย 🎯
คำถามที่พบบ่อย
บทเรียน “ฟังก์ชัน pub และการมองเห็น” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ฟังก์ชัน pub และการมองเห็น” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Zig Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Zig Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ฟังก์ชัน pub และการมองเห็น”
เปิดเผยฟังก์ชันข้ามไฟล์ คุณปฏิบัติ Zig Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Zig Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Zig Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “ฟังก์ชัน pub และการมองเห็น” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Zig Academy นี้ได้ไหม
ได้ บทเรียน Zig Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ไวยากรณ์ฟังก์ชันและชนิดค่าที่คืน
- การส่งค่าเทียบกับการส่งข้อมูลอ้างอิง
- ฟังก์ชัน pub และการมองเห็น
- การเรียกซ้ำและการคืนค่าหลายค่า