println!

println! เป็น macro ใน Rust ที่ใช้สำหรับพิมพ์ข้อความออกไปที่คอนโซล หรือ standard output คล้ายกับ console.log ใน JavaScript

ตัวอย่างการใช้ println!

fn main() {
    println!("Hello, World!");
}

จะพิมพ์ข้อความ "Hello, World!" ออกมาที่คอนโซล

note

เราไม่สามารถใส่อะไรก็ได้เข้าไปใน println! เพื่อพิมพ์ข้อความได้แบบ console.log ของ JavaScript

dbg!

dbg! เป็น macro ที่ใช้ในการตรวจสอบค่าของตัวแปรหรือ expression ในระหว่างการพัฒนา ช่วยให้สามารถดูค่าของตัวแปรในคอนโซลได้ง่ายๆ โดยไม่ต้องทำการจัดรูปแบบเหมือน println!

ตัวอย่างการใช้ dbg!

fn main() {
    let a = 10;
    let b = 20;
    let c = dbg!(a + b);
    println!("[src/main.rs:4:13] a + b = {}", c);
}

จะพิมพ์ข้อความ "[src/main.rs:4:13] a + b = 30" ออกมาที่คอนโซล

note

สิ่งที่แตกต่างจาก println!

  • ข้อมูลที่แสดงใน dbg! จะแสดงชื่อของตัวแปรและค่าของมัน พร้อมกับตำแหน่งที่อยู่ในโค้ด (ไฟล์และบรรทัด) ทำให้สามารถติดตามได้ว่าเกิดอะไรขึ้นที่ไหน
  • ไม่จำเป็นต้องจัดรูปแบบข้อความเหมือน println! ซึ่งทำให้ใช้งานได้ง่ายและรวดเร็วในการ debug
  • dbg! จะคืนค่าของ expression ที่ส่งเข้าไป