33 Punkte von xguru 2023-03-13 | 3 Kommentare | Auf WhatsApp teilen
  • Klar verstehen, was es mit dem & auf sich hat, das Rust-Einsteiger oft einfügen
  • Referenzen (&variable) : wie ein Spielzeug auszuleihen: „Du kannst es ansehen, aber nicht anfassen. Wenn du fertig bist, gib es zurück.“
  • Veränderbare Referenzen (&mut variable) : wie ein Malbuch auszuleihen: „Du kannst es ansehen und nach Belieben ausmalen, aber wenn du fertig bist, musst du es zurückgeben.“
  • Eigentumswerte (variable) : wie jemandem ein Spielzeug zu schenken: „Hier, nimm es. Du kannst damit machen, was du willst, und musst es nicht zurückgeben.“
  • Referenzgezählte Zeiger (Rc und Arc) :
    • Rc ist „wie Ballondekorationen auf einem Kindergeburtstag. Jeder kann sie sehen, aber man möchte nicht, dass sie jemand anfasst. Sie müssen dort bleiben, bis alle Kinder gegangen sind, und wenn das letzte Kind geht, beginnt das Aufräumen.“
    • In asynchronem oder Multithread-Code verwendet man Arc. Es funktioniert wie Rc.

3 Kommentare

 
ahwjdekf 2023-03-13

Wurde RefCell<T> als gefährliches Werkzeug, mit dem man all das ignorieren kann, absichtlich nicht erklärt?

 
ranolp 2023-03-13

Es ist zwar etwas komplexer, aber es lohnt sich, sich auch die Bilder in diesem Repository anzusehen: https://github.com/usagi/rust-memory-container-cs

 
freedomzero 2023-03-13

Die Erklärung zu RefCell fehlt!