Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Ainda não assimilei corretamente essa forma de borrowing?

Esse borrowing no caso utilizariamos se a gente quiser "reutilizar" uma valor de variavel?

Estou ainda com algumas duvidas

em relação ownership tambem sinto duvidas!!!

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta
solução!

Oi Levi! Tudo bem?

Entender o conceito de borrowing e ownership em Rust pode ser um pouco desafiador no início, mas é fundamental para aproveitar ao máximo a segurança e performance que a linguagem oferece.

Ownership é o sistema que Rust usa para gerenciar a memória. Cada valor em Rust tem um único "dono", e quando esse dono sai de escopo, o valor é automaticamente desalocado. Isso evita problemas como vazamentos de memória sem precisar de um garbage collector.

Borrowing é a forma de emprestar um valor sem transferir a posse. Isso é útil quando você quer que múltiplas partes do seu código possam ler um valor sem precisar copiá-lo. Em Rust, você pode emprestar um valor de duas maneiras:

  1. Referência Imutável (&): Você pode ter várias referências imutáveis para um valor ao mesmo tempo. Isso é útil quando você quer que várias partes do seu código leiam um valor sem alterá-lo.

    let s = String::from("hello");
    let r1 = &s; // referência imutável
    let r2 = &s; // outra referência imutável
    println!("{}, {}", r1, r2);
    
  2. Referência Mutável (&mut): Você só pode ter uma referência mutável para um valor por vez. Isso garante que não haverá alterações concorrentes no valor, evitando condições de corrida.

    let mut s = String::from("hello");
    let r1 = &mut s; // referência mutável
    r1.push_str(", world");
    println!("{}", r1);
    

O conceito de borrowing é justamente para permitir que você reutilize valores sem transferir a posse deles, mantendo a segurança e a integridade dos dados. Se você ainda está confuso sobre como e quando usar borrowing, recomendo praticar com exemplos simples e ir aumentando a complexidade à medida que você se sentir mais confortável.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.