unsafe does not disable the borrow checker. It does however give you abilities to circumvent it, namely by letting you dereference pointers, which are not subject to the borrow checker.
You can also selectively circumvent it without dipping into unsafe, by wrapping a type in an Rc or Arc (“reference-counting” and “atomic reference-counting”). This will allow you to handle an object largely like you might expect from garbage-collected languages. (Reference-counting is not able to free circular dependencies. If you need those, then use WeakRef.)
Having said that, I would certainly not recommend constantly doing that for a beginner. It needs some time to get used to the way Rust works, especially if you’re already experienced in other languages, but when it clicks, then you stop breaking your brain.
unsafe
does not disable the borrow checker. It does however give you abilities to circumvent it, namely by letting you dereference pointers, which are not subject to the borrow checker.You can also selectively circumvent it without dipping into
unsafe
, by wrapping a type in anRc
orArc
(“reference-counting” and “atomic reference-counting”). This will allow you to handle an object largely like you might expect from garbage-collected languages. (Reference-counting is not able to free circular dependencies. If you need those, then useWeakRef
.)Having said that, I would certainly not recommend constantly doing that for a beginner. It needs some time to get used to the way Rust works, especially if you’re already experienced in other languages, but when it clicks, then you stop breaking your brain.
OIC. I really need to start learning this language soon, or I won’t be able to understand future memes and rants.