Portal/Notes πŸ“
Rust

Arrays & Slices

Versi Bahasa Indonesia. Baca dalam Bahasa Inggris

Array

  • Array adalah kumpulan objek dengan tipe yang sama T, yang disimpan dalam memori yang berurutan.

  • Array dibuat menggunakan kurung siku [], dan panjangnya, yang diketahui saat compile time, adalah bagian dari type signature [T; length].

  • Array dialokasikan di stack.

  • Array memiliki kepemilikan atas datanya.

  • Array bisa secara otomatis dipinjam sebagai slices.

    let m = [1, 2, 3]; // Rust akan menyimpulkan tipe dan panjang
    let n: [i32; 3] = [1, 2, 3];

Slice

  • Slice mirip dengan array, tetapi panjangnya tidak diketahui saat compile time.

  • Slice adalah view ke dalam data; mereka tidak memiliki data tersebut.

  • Slice adalah reference dan mengikuti aturan borrowing Rust.

  • Slice adalah fat pointer:

    • Reference ke awal data.
    • Panjang dari slice.
    let x = [1, 2, 3];
    let slice = &x[1..]; // Sebuah slice mulai dari index 1

Referensi


Edit on GitHub

Last updated on

Arrays & Slices | Faisal Affan