Gerenciamento de Memória
Tradicionalmente, as linguagens se dividem em duas grandes categorias:
- Controle total através do gerenciamento manual de memória: C, C++, Pascal, …
- Segurança total através do gerenciamento automático de memória em tempo de execução: Java, Python, Go, Haskell, …
Rust oferece uma nova combinação:
Controle total e segurança por imposição do correto gerenciamento de memória em tempo de compilação.
Ele faz isso com um conceito de ownership (posse) explícito.
Primeiro, vamos rever como funciona o gerenciamento de memória.