33 คะแนน โดย xguru 2023-03-13 | 3 ความคิดเห็น | แชร์ทาง WhatsApp
  • ทำความเข้าใจให้ชัดเจนเกี่ยวกับ & ที่ผู้เริ่มต้น Rust มักจะแทรกเข้าไปบ่อย ๆ
  • References (&variable) : เหมือนการให้ยืมของเล่น "ดูได้ แต่จับไม่ได้นะ ใช้เสร็จแล้วต้องคืน"
  • Mutable References (&mut variable) : เหมือนการให้ยืมสมุดระบายสี "ดูได้และจะระบายสีตามใจชอบก็ได้ แต่พอใช้เสร็จต้องคืน"
  • Owned Values (variable) : เหมือนการยกของเล่นให้คนอื่น "เอ้า เอาไปเลย ใช้ได้ตามใจ และไม่ต้องคืนก็ได้"
  • Reference-Counted Pointers (Rc และ Arc) :
    • Rc คือ "เหมือนของตกแต่งลูกโป่งในงานวันเกิดเด็ก ทุกคนดูได้ แต่ไม่อยากให้จับ ต้องอยู่ตรงนั้นจนกว่าเด็กคนสุดท้ายจะกลับ แล้วค่อยเริ่มเก็บงาน"
    • ในโค้ด async/มัลติเธรด ให้ใช้ Arc ซึ่งทำงานเหมือน Rc

3 ความคิดเห็น

 
ahwjdekf 2023-03-13

RefCell<T> เป็นเครื่องมืออันตรายที่สามารถเพิกเฉยต่อทั้งหมดนี้ได้ หรือว่าตั้งใจไม่อธิบายกันแน่

 
ranolp 2023-03-13

แม้จะซับซ้อนขึ้นอีกเล็กน้อย แต่ถ้าได้ดูภาพถ่ายในเรโปซิทอรีนี้ไปพร้อมกันด้วยก็น่าจะดี: https://github.com/usagi/rust-memory-container-cs

 
freedomzero 2023-03-13

คำอธิบายเกี่ยวกับ RefCell หายไปนะ!