Sobes.tech
Junior — Middle

Millised unikaalsed omadused on slices Go keeles?

sobes.tech AI

Vastus AI-lt

Go'slice'id on dünaamilised, muudetavad vaated massiivi elementide järjestusele. Slices'i unikaalsed omadused:

  • Dünaamiline suurus: erinevalt massiividest, slices võivad muutuda pikkust jooksvalt.
  • Viide põhimassiivile: slice sisaldab viidet põhimassiivile, samuti selle pikkusele ja mahutavusele.
  • Mahutavus ja pikkus: pikkus on elementide arv slices, mahutavus on maksimaalne elementide arv, mida slice saab ilma uue mälu eraldamiseta mahutada.
  • Slices'i kopeerimine: kopeerides slice'i, kopeeritakse struktuur, kuid mitte andmed, see tähendab, et mõlemad slices viitavad samale massiivile.

Näide slices'i loomise kohta:

arr := [5]int{1, 2, 3, 4, 5}
slice := arr[1:4] // slice elementidega 2,3,4