I denne opplæringen lærer vi hvordan vi kan få tilgang til skiver av samling som vektorer, matriser, strenger osv.
Rust skaper skive
Som nevnt i seksjonen over, er en skive en lånt type som holder pekeren til adressen til dataene.
Derfor lager vi en skive ved å ta en del av eksisterende databeholder. Vi kan ikke lage en skive som om vi ville en normal variabel.
For å lage en skive, spesifiserer vi start- og sluttindeksen i et par firkantede parenteser. Start- og sluttindeksen skilles ved hjelp av dobbel prikknotasjon.
Vi kan uttrykke denne syntaksen som vist:
la noen_string = "verdi";Merk at vi kan skive enhver gyldig samling i rust. Ta eksemplet nedenfor som lager en skive fra en strengtype.
fn main ()Koden over oppretter en skive av en streng som starter fra indeks 0 til indeks 9. Merk at den siste er eksklusiv. Dette betyr at skiven vil inneholde verdien fra start til sluttindeks - 1.
Legg merke til & operatøren? Dette er fordi skiven er en referanse til de faktiske dataene i den spesifiserte samlingen.
Koden over skal returnere:
Rust lar oss også hoppe over start- og sluttindeksen. For eksempel, hvis vi starter skiven fra indeks 0, kan vi utelate 0 og bare angi sluttindeksen. Et eksempel er som vist:
fn main ()Merk at eksemplet ovenfor angir indeksområdet som ... 9. Dette betyr start fra indeks 0 til indeks 9.
Vi kan gjøre det samme for å avslutte indeksen. Tenk på eksempelkoden vist nedenfor:
fn main ()Dette skulle komme tilbake:
Bortsett fra en streng, kan du ha en skive av en matrise. Et eksempel er som vist nedenfor:
fn main ()Dette skal returnere en matrise -skive med verdiene i det spesifiserte området.
[200, 300]Vi kan skive en vektor som vist:
fn main ()Mutabel skive
Vi kan også lage mutable skiver ved å stille inn mut -nøkkelordet i en skive. Et eksempel er som vist:
fn main ()Du kan mutere den returnerte matrisen slik du passer passer.
Konklusjon
Denne guiden dekker grunnleggende om å jobbe med skiver i rustspråket. Du kan sjekke dokumentasjonen for å utforske videre.
Takk for at du leste!