Vi kan imidlertid møte forekomster der vi trenger å bruke og endre en verdi midlertidig. Vi kan oppnå dette ved hjelp av lån. Lån er et konsept som lar oss låne en verdi, bruke den, og når vi er ferdige, kan du returnere den tilbake til eieren i samme tilstand som det var da vi lånte den. Dette betyr at lån ikke endrer den opprinnelige verdien.
Vi låner en verdi ved å henvise den til ved å bruke minneadressen og operatøren. Vi kan deretter overføre referansen til en funksjon og bruke verdien som vi ser passform.
Referanseregler
Det er to regler for å jobbe med referanser i rust:
Rust referanse og låne verdi
I rust bruker vi & operatøren for å referere til en verdiadresse. Et eksempelkode er som vist nedenfor:
fn main ()I koden over definerer vi en variabel kalt “String”. I henhold til eierreglene eier denne variabelen verdien “Hei”.
Vi må imidlertid bruke denne variabelen i funksjonen. Siden en verdi bare kan ha en eier på et gitt tidspunkt, vil det å bruke den inne i funksjonen overføre eierskap. Siden vi ikke vil at eierskapet skal overføres til funksjonen, låner vi verdien ved å henvise til å henvise til eieren.
Merk at vi legger til & operatøren i funksjonsparametertypen. Dette forteller Rust at vi refererer til verdien og bør gi den tilbake etter fullføring.
Mutable referanser
Hvis vi prøver å endre en lånt verdi, vil rust føre til en feil. Ta eksemplet nedenfor:
fn main ()Å kjøre koden over skal returnere en feil som:
Dette er fordi referanser er uforanderlige som standard. Derfor kan vi ikke endre en lånt verdi.
Vi kan ha en mutabel referanse som lar oss endre en lånt verdi. Tenk på eksempelkoden nedenfor:
fn main ()I eksemplet over setter vi variabelen “streng” t være mutable. Vi oppretter deretter en mutbar referanse ved hjelp av & mut -strengen i funksjonssamtalen. Merk at funksjonsparameteren godtar en mutbar referanse, slik at funksjonen kan endre den lånte verdien.
Merk: Som nevnt kan du bare ha en mutbar referanse på et bestemt tidspunkt. Forsøk på å opprette mer enn en mutbar referanse vil kaste en feil som vist:
fn main ()Koden over skal returnere en feil som vist:
Denne funksjonen kan bidra til å forhindre raseforhold når du låner og refererer til verdier.
Konklusjon
Denne artikkelen gir en grunnleggende forståelse av å bruke og jobbe med rustlån og referanse funksjoner. Du kan sjekke dokumentene for å utforske videre.