Rumah Keuangan Pribadi Mengapa Anda Perlu Menyalin Konstruktor di C + + - dummies

Mengapa Anda Perlu Menyalin Konstruktor di C + + - dummies

Video: Python Tutorial For Beginners | Python Full Course From Scratch | Python Programming | Edureka 2024

Video: Python Tutorial For Beginners | Python Full Course From Scratch | Python Programming | Edureka 2024
Anonim

Konstruktor adalah fungsi khusus yang C ++ panggil secara otomatis saat sebuah objek dibuat untuk memungkinkan objek menginisialisasi dirinya sendiri. Ada dua variasi konstruktor yang dikenal sebagai konstruktor bergerak copy dan .

Konstruktor copy adalah konstruktor yang C ++ gunakan untuk membuat salinan objek. Ini membawa nama X:: X (const X &), di mana X adalah nama kelas. Artinya, ini adalah konstruktor kelas X, yang menganggap argumennya mengacu pada objek kelas X . Ini terdengar sangat tidak berguna, tapi luangkan waktu sebentar untuk mengeksplorasi mengapa C ++ membutuhkan binatang beo semacam itu.

Pikirkan sejenak tentang apa yang terjadi saat Anda memanggil fungsi seperti berikut:

void fn (Student fs) {// … skenario yang sama; argumen yang berbeda …} int main (int argcs, char * pArgs []) {Student ms; fn (ms); return 0;}

Dalam panggilan ke fn (), C ++ melewati salinan objek ms dan bukan objek itu sendiri.

Sekarang pertimbangkan apa artinya membuat salinan dari sebuah objek. Pertama, dibutuhkan konstruktor untuk membuat objek, bahkan salinan objek yang ada. C ++ bisa membuat konstruktor salin default yang menyalin objek yang ada ke objek baru satu byte dalam satu waktu.

Itulah bahasa yang lebih tua seperti C do. Tapi bagaimana jika kelas tidak menginginkan salinan objek yang sederhana? Bagaimana jika ada hal lain yang dibutuhkan? (Abaikan "mengapa?" Untuk sementara waktu.) Kelas harus bisa menentukan dengan tepat bagaimana salinannya harus dibuat.

Jadi, C ++ menggunakan konstruktor salin pada contoh sebelumnya untuk membuat salinan objek ms di tumpukan selama panggilan fungsi fn (). Konstruktor copy khusus ini adalah Student:: Student (Student &) - katakan itu tiga kali dengan cepat.

Mengapa Anda Perlu Menyalin Konstruktor di C + + - dummies

Pilihan Editor

10 Outlook 2013 Jalan pintas layak diambil - dummies

10 Outlook 2013 Jalan pintas layak diambil - dummies

Meskipun komputer dan program perangkat lunak seperti Outlook 2013 seharusnya menyelamatkan Anda waktu, beberapa hari ini sepertinya tidak menjadi masalah. Tombol juggling, kunci, dan Pita sepertinya bisa memakan waktu seharian. Berikut adalah beberapa cara pintas yang bisa menghemat waktu dan ketegangan Anda.

Cara menambahkan kontak di Outlook 2013 - dummies

Cara menambahkan kontak di Outlook 2013 - dummies

Bila bukan apa yang Anda ketahui tapi siapa yang Anda kenal, Anda butuh alat yang bagus untuk mencatat siapa siapa. Outlook 2013 adalah alat yang hebat untuk mengelola nama dan alamat Anda, dan ini mudah digunakan sebagai Buku Hitam Kecil Anda.

Cara menambahkan foto ke kontak Outlook 2013 - dummies

Cara menambahkan foto ke kontak Outlook 2013 - dummies

Anda dapat menyertakan gambar dengan kontak informasi yang Anda kumpulkan di Outlook 2013, dan tidak hanya untuk hiasan. Kini setelah banyak ponsel dan perangkat seluler lainnya melakukan sinkronisasi dengan daftar Kontak Outlook, Anda dapat membuat gambar seseorang muncul di layar ponsel Anda setiap kali dia menelepon atau mengirim SMS. Foto-foto itu ...

Pilihan Editor

Cara Mengatasi Masalah Lingkaran di lingkaran PSAT / NMSQT - dummies

Cara Mengatasi Masalah Lingkaran di lingkaran PSAT / NMSQT - dummies

Ada di mana-mana, terutama di PSAT / NMSQT. Bukan kebetulan bahasa Inggris berisi begitu banyak rujukan ke lingkaran: lingkaran teman, air mengitari cerat, lingkaran penuh, dan sebagainya. Ketika Anda menekan lingkaran pertanyaan pada PSAT / NMSQT, ingat fakta-fakta ini: Jari-jari adalah garis lurus dari pusat lingkaran ...

Meningkatkan Motivasi Anda untuk Dilakukan dengan baik di MAT - dummies

Meningkatkan Motivasi Anda untuk Dilakukan dengan baik di MAT - dummies

Uji Analogi Miller (Miller Analogies Test - MAT) adalah tes standar yang biasanya digunakan untuk penerimaan sekolah pascasarjana, jadi Anda sudah termotivasi untuk melakukannya dengan baik. Sebagai belajar untuk MAT menjadi sulit, memakan waktu, membosankan, atau hanya membosankan, akan sulit untuk mempertahankan motivasi Anda untuk melanjutkan pencarian Anda. Jadi, bagaimana Anda bisa meningkatkan level Anda saat ini?

Pilihan Editor

Bagaimana memberi nama file HTML - dummies

Bagaimana memberi nama file HTML - dummies

Anda tidak dapat membuka kode Anda di browser sampai Anda menyimpan itu dengan perpanjangan nama file. html (atau .htm). Ingat bahwa judul halaman ditampilkan di bilah judul browser atau bilah tab. Judul benar-benar bagaimana halaman Anda "diidentifikasi" ke seluruh dunia. Nama file halaman, meskipun, lebih merupakan bagian dalam ...

Bagaimana Mencocokkan Email Pemasaran dengan Brand Anda - dummies

Bagaimana Mencocokkan Email Pemasaran dengan Brand Anda - dummies

Branding e-mail pemasaran Anda membantu audiens Anda untuk segera mengenali dan membedakan e-mail Anda dari e-mail asing yang mereka terima. Menjaga pencitraan e-mail Anda konsisten dari waktu ke waktu memungkinkan penerima Anda mengenal Anda dan e-mail karena mereka menerima beberapa e-mail dari Anda. Semua komunikasi bisnis Anda harus mengandung elemen pencitraan merek yang konsisten, dan ...