Use addresses, dereferencing, pointer parameters, new, and heap allocation without manual memory management. Distinguish value and pointer semantics and recognize when mutation or copying is intended.