Mengambil Kepemilikan dengan owned
Pindahkan nilai ke dalam fungsi.
Mengambil Kepemilikan dengan owned adalah pelajaran Mojo Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Mojo Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Mojo Academy mencakup 4 pelajaran total.
Cara Ketiga untuk Meneruskan Nilai
Anda telah mempelajari borrowed untuk membaca dan inout untuk mengedit. Konvensi ketiga memungkinkan fungsi mengambil alih suatu nilai sepenuhnya. 📦
Mengenal owned
Argumen owned memindahkan kepemilikan ke dalam fungsi. Kini fungsi memegang nilai tersebut sebagai miliknya sendiri untuk digunakan atau disimpan.
Menandai Parameter
Anda menulis owned sebelum nama parameter. Di dalam fungsi, kendalinya penuh: fungsi dapat memutasi, menyimpan, atau mengonsumsi nilai tersebut.
fn consume(owned name: String):
print(name)Fungsi Menjadi Pemilik
Dengan owned, masa hidup nilai berpindah ke dalam fungsi. Saat fungsi berakhir, fungsi bertanggung jawab untuk menghancurkan nilai tersebut.
Mengapa Mengambil Kepemilikan?
Gunakan owned saat fungsi perlu menyimpan nilai, misalnya menyimpannya dalam struct atau koleksi, bukan sekadar membacanya sebentar.
Owned Juga Berarti Dapat Diubah
Karena fungsi memiliki nilai tersebut, fungsi bebas mengubahnya. Tidak ada pemanggil yang perlu dilindungi karena nilai itu kini menjadi milik fungsi.
Cara Nilai Diterima
Secara default, Mojo memberi parameter owned sebuah salinan baru, sehingga nilai asli milik pemanggil tetap utuh kecuali Anda meminta pemindahan.
Menghindari Salinan
Jika Anda tidak lagi memerlukan nilai asli, Anda dapat menyerahkan nilai tersebut alih-alih menyalinnya. Transfer itu menjadi topik pelajaran berikutnya.
Maksud yang Jelas
Memilih owned memberi tahu pembaca bahwa fungsi akan menyimpan nilai tersebut. Tanda tangan fungsi mendokumentasikan perjalanan data secara sekilas.
Tiga Konvensi
Sekarang Anda telah mempelajari ketiganya: borrowed membaca, inout memutasi secara langsung, dan owned mengambil alih nilai. Masing-masing menyatakan maksud yang jelas.
Pilih Berdasarkan Tanggung Jawab
Tanyakan siapa yang harus bertanggung jawab atas nilai tersebut setelah pemanggilan. Jika jawabannya adalah fungsi, pilihlah owned.
Pemeriksaan Singkat
Mari kita periksa arti owned bagi sebuah fungsi.
Rangkuman
owned menyerahkan kepemilikan nilai kepada fungsi, yang dapat menyimpan, mengubah, atau menghancurkannya. Gunakan ini saat fungsi harus memiliki data tersebut. 🎯
Belajar Mojo dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Mengambil Kepemilikan dengan owned” gratis?
Ya — teks lengkap “Mengambil Kepemilikan dengan owned” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Mojo Academy, upgrade ke CoddyKit PRO. Kursus Mojo Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Mengambil Kepemilikan dengan owned”?
Pindahkan nilai ke dalam fungsi. Kamu berlatih Mojo Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Mojo Academy?
Tidak diperlukan pengalaman sebelumnya. Mojo Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Mengambil Kepemilikan dengan owned” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Mojo Academy ini?
Ya. Setiap pelajaran Mojo Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Meminjam Argumen Hanya-Baca
- Mutasi di Tempat dengan inout
- Mengambil Kepemilikan dengan owned
- Operator Transfer