Apa itu kelas ? Apa itu objek ? Untuk pembelajaran bahasa C++ berorientasi objek, pemahaman kelas dan objek merupakan landasan inti dalam keseluruhan pembelajaran bahasa. Pemahaman umum adalah bahwa kelas sebenarnya adalah model, tipe variabel, dan objek adalah variabel spesifik yang ditentukan oleh tipe ini, seperti int a; dalam kalimat ini, int berhubungan dengan kelas, dan a berhubungan dengan objek. Ini seharusnya mudah dipahami oleh semua orang, namun perlu dicatat bahwa int adalah tipe bawaan C++, bukan kelas sebenarnya.
Oleh karena itu, secara ringkas: kelas adalah abstraksi dan generalisasi suatu objek, dan objek adalah konkrit dan turunan dari suatu kelas. Tolong pahami kalimat ini.
Jadi seperti apa kelas di C++? Sederhananya, kelas di C++ sebenarnya adalah struktur yang berisi fungsi! Karena anggota dalam kelas C++ tidak hanya dapat berisi variabel dasar seperti struktur dalam bahasa C, mereka juga dapat berisi fungsi. Variabel pertama disebut variabel anggota , dan fungsi terakhir disebut metode anggota .
Kata kunci didefinisikan menggunakan kelas kelas . Misalnya, berikut ini mendefinisikan kelas C++, kelas siswa:
classStudent{public:intnum;charname[100];intscore;intprint(){cout<<num<<<<nama<<<<score;return0;}};
Seperti yang Anda lihat, bentuknya sangat mirip dengan struktur bahasa C. Anggotanya menyertakan variabel dan fungsi. Perlu disebutkan bahwa setiap orang harus memperhatikan fakta bahwa ada juga hal publik di kelas, yang merupakan atribut kontrol akses yang mengontrol hak akses anggota, selain public , ada tiga jenis: private dan protected . Diantaranya, private berarti privat. Anggota yang dinyatakan olehnya hanya dapat diakses oleh anggota kelas dan tidak dapat diakses oleh dunia luar. Ini adalah izin paling tertutup yang sedikit lebih bersifat publik daripada privat oleh anggotanya sendiri di dalam kelas, subkelasnya juga dapat diakses (kami akan memperluas konsep subkelas secara mendetail nanti); dan anggota yang dinyatakan secara publik dapat diakses oleh objek mana pun di kelas tersebut dan sepenuhnya merupakan data publik . Di sini Anda cukup memahaminya, dan kemudian Anda dapat mengalaminya sambil bereksperimen dengan kode. Perlu diingat bahwa ada titik koma setelah definisi kelas. Harap berhati-hati untuk tidak membuangnya!
Oke, setelah memahami tampilan dasar suatu kelas, mari kita tunjukkan cara penulisan lainnya. Pada cara yang baru saja kita lihat, fungsi anggota ditulis di kelas. Jika ada banyak fungsi anggota di kelas, bacalah sangat berantakan. Oleh karena itu, C++ juga mendukung cara penulisan yang lain, yaitu fungsi anggota hanya mendeklarasikan prototipe fungsi di dalam kelas dan mendefinisikan badan fungsi di luar kelas kelasnya, seperti direktori. Sekilas jelas dan banyak spesifikasinya.
Cara mendeklarasikan prototipe fungsi dalam suatu kelas sama dengan deklarasi prototipe fungsi pada bahasa C umum. Cara mendeklarasikan fungsi di luar kelas memerlukan penambahan qualifier :: scope pada nama kelas tadi sebagai contoh. Kode yang didefinisikan di luar kelas adalah sebagai berikut:
classStudent{public:intnum;//nomor siswa charname[100];//nama intscore;//score intprint();//deklarasikan fungsi cetak di dalam kelas}; intStudent::print()//define selesai di luar kelas}; fungsi cetak kelas {cout<<num<<<<nama<<<<skor;return0;}
Harap dicatat bahwa setelah fungsi cetak dideklarasikan di kelas, kita mendefinisikannya sepenuhnya nanti. Di header fungsi, antara nilai yang dikembalikan dan nama fungsi, nama kelas ditambah :: digunakan untuk menunjukkan kelas mana yang dimiliki fungsi tersebut.
Harap biasakan diri Anda dengan dua penggunaan di atas, lalu gunakan komputer untuk memahaminya sendiri, dan pilih sesuai dengan situasinya.