Rust

Trait Lanjutan

Associated type vs generic, GATs, trait object, keyword dyn, object safety, vtable

22 pertanyaan wawancaraยท
Senior
1

Apa perbedaan utama antara associated type dan parameter generic dalam sebuah trait?

Jawaban

Associated type hanya memperbolehkan satu implementasi trait per tipe, sedangkan parameter generic memperbolehkan beberapa implementasi. Dengan associated type, tipe ditentukan oleh implementasi itu sendiri, sehingga menyederhanakan inferensi tipe dan menghindari penentuan tipe di setiap penggunaan.

2

Keyword apa yang digunakan untuk membuat trait object di Rust?

Jawaban

Keyword dyn digunakan untuk membuat trait object di Rust. Keyword ini menandakan bahwa dispatch metode akan terjadi secara dinamis saat runtime melalui vtable, berbeda dengan dispatch statis pada generic yang diselesaikan saat kompilasi.

3

Apa itu vtable dalam konteks trait object?

Jawaban

vtable (virtual table) adalah tabel pointer ke implementasi metode trait untuk sebuah tipe konkret. vtable digunakan untuk dispatch dinamis trait object, sehingga metode yang benar dapat dipanggil saat runtime tanpa mengetahui tipe konkret saat kompilasi.

4

Kondisi apa yang harus dipenuhi sebuah trait agar object-safe?

5

Mengapa trait Clone tidak object-safe?

+19 pertanyaan wawancara

Kuasai Rust untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis