use และเส้นทาง
นำเข้ารายการ
use และเส้นทาง เป็นบทเรียน Learn Rust Coding ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Learn Rust Coding และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Learn Rust Coding มีบทเรียนทั้งหมด 4 บทเรียน
นำรายการเข้าสู่ขอบเขต
การพิมพ์พาธเต็มอย่าง std::collections::HashMap ในทุกที่เป็นเรื่องน่าเบื่อ คีย์เวิร์ด use จะนำรายการเข้าสู่ขอบเขต ทำให้คุณอ้างถึงรายการนั้นด้วยชื่อสั้น ๆ ได้
การใช้ use พื้นฐาน
หลังจากใช้ use แล้ว คุณจะอ้างถึงรายการด้วยชื่อสุดท้ายของพาธได้ ที่นี่เรานำเข้า HashMap แล้วใช้งานโดยตรง
use std::collections::HashMap;
fn main() {
let mut scores = HashMap::new();
scores.insert("ana", 10);
println!("{:?}", scores.get("ana"));
}พาธสัมบูรณ์กับพาธสัมพัทธ์
พาธสัมบูรณ์เริ่มต้นจาก crate (รากของแครต) ส่วนพาธสัมพัทธ์เริ่มต้นจากโมดูลปัจจุบัน และอาจใช้ self หรือ super ได้
mod a {
pub mod b {
pub fn hi() { println!("hi from b"); }
}
pub fn call_b() {
crate::a::b::hi();
self::b::hi();
}
}
fn main() {
a::call_b();
}การใช้ use ภายในโมดูล
use มีผลเฉพาะขอบเขตที่ปรากฏอยู่เท่านั้น วางไว้ด้านบนของโมดูลเพื่อย่อชื่อที่ใช้ตลอดทั้งโมดูลนั้น
mod work {
use std::collections::HashSet;
pub fn run() {
let mut s = HashSet::new();
s.insert(1);
s.insert(1);
println!("size {}", s.len());
}
}
fn main() {
work::run();
}เปลี่ยนชื่อด้วย as
เมื่อรายการสองรายการมีชื่อเหมือนกัน หรือชื่อยาวเกินไป ให้เปลี่ยนชื่อขณะนำเข้าด้วย as
use std::collections::HashMap as Map;
fn main() {
let mut m: Map<&str, i32> = Map::new();
m.insert("x", 1);
println!("{:?}", m.get("x"));
}จัดกลุ่มการนำเข้า
นำเข้าหลายรายการจากพาธเดียวกันในบรรทัดเดียวโดยใช้วงเล็บปีกกา วิธีนี้ช่วยให้บล็อกการนำเข้าเป็นระเบียบ
use std::collections::{HashMap, HashSet};
fn main() {
let map: HashMap<i32, i32> = HashMap::new();
let set: HashSet<i32> = HashSet::new();
println!("{} {}", map.len(), set.len());
}กลุ่มซ้อนและ self
ภายในกลุ่ม self จะนำเข้าโมดูลนั้นเองพร้อมกับรายการภายในโมดูล ทำให้คุณใช้ได้ทั้งชื่อโมดูลและสมาชิกเฉพาะรายการ
use std::io::{self, Write};
fn main() {
let _ = io::stdout().write_all(b"hello\n");
}การนำเข้าแบบโกลบ
โกลบ * จะนำเข้าทุกสิ่งที่เป็นสาธารณะจากพาธหนึ่ง ๆ ควรใช้แต่น้อย เพราะอาจทำให้มองไม่เห็นว่าชื่อต่าง ๆ มาจากที่ใด แต่รูปแบบนี้ใช้กันทั่วไปกับโค้ดเตรียมความพร้อมและการทดสอบ
mod colors {
pub fn red() -> &'static str { "red" }
pub fn blue() -> &'static str { "blue" }
}
use colors::*;
fn main() {
println!("{} {}", red(), blue());
}รูปแบบการนำเข้าที่เหมาะกับภาษา
หลักปฏิบัติคือ ให้นำเข้าฟังก์ชันผ่านโมดูลแม่ (use std::cmp; cmp::max(...)) แต่นำเข้าชนิดข้อมูลด้วยชื่อ (use std::collections::HashMap;) วิธีนี้ทำให้การเรียกใช้สื่อความหมายได้ชัดเจน
use std::cmp;
fn main() {
println!("{}", cmp::max(3, 9));
}พาธไปยังแครตภายนอก
สำหรับสิ่งที่ต้องพึ่งพา พาธจะเริ่มต้นด้วยชื่อแครต เช่น rand::thread_rng คุณระบุแครตใน Cargo.toml แล้วนำเข้ารายการด้วยวิธีเดียวกับที่ใช้กับ std
จัดการการนำเข้าให้เป็นระเบียบ
จัดกลุ่มการนำเข้าที่เกี่ยวข้องกัน เปลี่ยนชื่อเพื่อหลีกเลี่ยงการชนกัน และเลือกการนำเข้าแบบระบุชัดเจนแทนโกลบในโค้ดแอปพลิเคชัน การนำเข้าที่เป็นระเบียบช่วยให้ไล่อ่านไฟล์ได้ง่าย
ตรวจสอบความเข้าใจอย่างรวดเร็ว
ทดสอบความรู้เรื่องพาธของคุณ
ทบทวน
คุณได้เรียนรู้วิธีนำเข้ารายการแล้ว:
useนำรายการเข้าสู่ขอบเขตด้วยชื่อสั้น ๆ- พาธสัมบูรณ์เริ่มต้นที่
crateส่วนพาธสัมพัทธ์ใช้self/super asใช้เปลี่ยนชื่อ วงเล็บปีกกาใช้จัดกลุ่ม และ*ใช้นำเข้าแบบโกลบ- นำเข้าชนิดข้อมูลด้วยชื่อ และนำเข้าฟังก์ชันผ่านโมดูลแม่เพื่อความชัดเจน
คำถามที่พบบ่อย
บทเรียน “use และเส้นทาง” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “use และเส้นทาง” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Learn Rust Coding ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Learn Rust Coding มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “use และเส้นทาง”
นำเข้ารายการ คุณปฏิบัติ Learn Rust Coding ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Learn Rust Coding หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Learn Rust Coding บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “use และเส้นทาง” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Learn Rust Coding นี้ได้ไหม
ได้ บทเรียน Learn Rust Coding ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- มอดูลและ mod
- pub และการมองเห็น
- use และเส้นทาง
- เครตและรากเครต