Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

Kelas C++ dan Objek dengan Contoh

Apa itu Kelas?

Kelas C++ menggabungkan data dan metode untuk memanipulasi data menjadi satu. Kelas juga menentukan bentuk objek. Data dan metode yang terkandung dalam sebuah kelas dikenal sebagai anggota kelas. Kelas adalah tipe data yang ditentukan pengguna. Untuk mengakses anggota kelas, kami menggunakan turunan dari kelas. Anda dapat melihat kelas sebagai cetak biru untuk suatu objek.

Sebuah kelas menjadi prototipe sebuah rumah. Ini menunjukkan lokasi dan ukuran pintu, jendela, lantai, dll. Dari uraian tersebut, kita dapat membangun sebuah rumah. Rumah menjadi objeknya. Dimungkinkan untuk membuat banyak rumah dari prototipe. Selain itu, dimungkinkan untuk membuat banyak objek dari sebuah kelas.

Pada gambar di atas, kami memiliki prototipe rumah tunggal. Dari prototipe ini, kami telah membuat dua rumah dengan fitur yang berbeda.

Dalam tutorial ini, Anda akan mempelajari:

Deklarasi Kelas

Dalam C+, sebuah kelas didefinisikan menggunakan kata kunci class. Ini harus diikuti dengan nama kelas. Badan kelas kemudian ditambahkan di antara kurung kurawal {}.

Sintaks:

class class-name
   {
   // data
   // functions
   };

Kata Kunci Pribadi dan Publik

Anda pasti pernah menemukan dua kata kunci ini. Mereka adalah pengubah akses.

Ketika kata kunci privat digunakan untuk mendefinisikan fungsi atau kelas, itu menjadi pribadi. Itu hanya dapat diakses dari dalam kelas.

Kata kunci publik, di sisi lain, membuat data/fungsi publik. Ini dapat diakses dari luar kelas.

Definisi Objek

Objek dibuat dari kelas. Objek kelas dideklarasikan dengan cara yang sama seperti variabel dideklarasikan. Nama kelas harus dimulai, diikuti dengan nama objek. Objek dari tipe kelas.

Sintaks:

class-name object-name;

Proses pembuatan objek dari kelas ini dikenal sebagai instantiasi.

Mengakses Data Anggota

Untuk mengakses anggota publik dari suatu kelas, kita menggunakan operator (.)dot. Ini adalah anggota yang ditandai dengan pengubah akses publik.

Contoh 1:

#include <iostream>
using namespace std;
class Phone {
public:
	double cost;   
	int slots; 
};
int main() {
	Phone Y6;        
	Phone Y7;        

	Y6.cost = 100.0;
	Y6.slots = 2;

	Y7.cost = 200.0;
	Y7.slots = 2;
	cout << "Cost of Huawei Y6 : " << Y6.cost << endl;
	cout << "Cost of Huawei Y7 : " << Y7.cost << endl;

	cout << "Number of card slots for Huawei Y6 : " << Y6.slots << endl;
	cout << "Number of card slots for Huawei Y7 : " << Y7.slots << endl;

	return 0;
}

Keluaran:

Berikut adalah screenshot kodenya:

Penjelasan Kode :

  1. Sertakan file header iostream dalam kode kita untuk menggunakan fungsinya.
  2. Menyertakan namespace std dalam kode kita untuk menggunakan kelasnya tanpa memanggilnya.
  3. Deklarasikan kelas bernama Telepon.
  4. Menggunakan pengubah akses publik untuk menandai variabel yang akan kita buat sebagai dapat diakses publik.
  5. Deklarasikan biaya variabel dari tipe data ganda.
  6. Deklarasikan variabel integer bernama slot.
  7. Akhir dari isi kelas.
  8. Memanggil fungsi main(). Logika program harus ditambahkan di dalam tubuhnya.
  9. Buat objek bernama Y6 dengan tipe Phone. Ini disebut instantiasi.
  10. Buat objek bernama Y7 dengan tipe Phone. Ini disebut instantiasi.
  11. Akses variabel/biaya anggota kelas Telepon menggunakan objek Y6. Nilai diatur ke 100,0. Biaya Y6 sekarang disetel ke 100.0.
  12. Mengakses slot variabel/anggota kelas Telepon menggunakan objek Y6. Nilainya disetel ke 2. Slot untuk Y6 sekarang disetel ke 2.
  13. Akses variabel/biaya anggota kelas Telepon menggunakan objek Y7. Nilainya diatur ke 200,0. Biaya Y7 sekarang ditetapkan menjadi 200.0.
  14. Mengakses slot variabel/anggota dari kelas Telepon menggunakan objek Y7. Nilai disetel ke 2. Slot untuk Y7 sekarang disetel ke 2.
  15. Cetak harga Y6 di konsol bersama teks lainnya.
  16. Cetak harga Y7 di konsol bersama teks lainnya.
  17. Cetak jumlah slot untuk Y6 di samping teks lainnya.
  18. Cetak jumlah slot untuk Y7 di samping teks lainnya.
  19. Program harus mengembalikan nilai setelah berhasil diselesaikan.
  20. Akhir dari isi fungsi main().

Apa itu Kelas Privat?

Anggota kelas yang ditandai sebagai pribadi hanya dapat diakses oleh fungsi yang ditentukan di dalam kelas. Objek atau fungsi apa pun yang ditentukan di luar kelas tidak dapat mengakses anggota tersebut secara langsung. Anggota kelas privat hanya dapat diakses oleh fungsi anggota dan teman.

Apa itu Kelas Terlindungi?

Anggota kelas yang ditandai sebagai dilindungi memiliki keunggulan dibandingkan yang ditandai sebagai pribadi. Mereka dapat diakses oleh fungsi dalam kelas definisi mereka. Selain itu, mereka dapat diakses dari kelas turunan.

Contoh 2:

#include <iostream>
using namespace std;
class ClassA {
public:
	void set_a(int val);
	int get_a(void);

private:
	int a;
};
int ClassA::get_a(void) {
	return a;
}
void ClassA::set_a(int val) {
	a = val;
}
int main() {
	ClassA a;
	a.set_a(20); 
	cout << "Value of a is: " << a.get_a(); 
	return 0;
}

Keluaran:

Berikut adalah screenshot kodenya:

Penjelasan Kode:

  1. Sertakan file header iostream dalam kode kita untuk menggunakan fungsinya.
  2. Sertakan namespace std dalam kode kita untuk menggunakan kelasnya tanpa memanggilnya.
  3. Buat kelas bernama ClassA.
  4. Gunakan pengubah akses publik untuk menandai anggota kelas yang akan dibuat sebagai dapat diakses publik.
  5. Buat fungsi bernama set_a() yang mengambil satu nilai integer val.
  6. Buat fungsi bernama get_a().
  7. Gunakan pengubah akses pribadi untuk menandai anggota kelas yang akan dibuat sebagai dapat diakses secara pribadi.
  8. Deklarasikan variabel integer bernama a.
  9. Akhir dari isi kelas.
  10. Gunakan nama kelas dan operator resolusi cakupan untuk mengakses fungsi get_a(). Kami ingin mendefinisikan apa yang dilakukan fungsi saat dipanggil.
  11. Fungsi get_a() harus mengembalikan nilai variabel a saat dipanggil.
  12. Akhir dari definisi fungsi get_a().
  13. Gunakan nama kelas dan operator resolusi cakupan untuk mengakses fungsi set_a(). Kami ingin mendefinisikan apa yang dilakukan fungsi saat dipanggil.
  14. Menetapkan nilai variabel val ke variabel a.
  15. Akhir dari definisi fungsi set_a().
  16. Panggil fungsi main(). Logika program harus ditambahkan dalam isi fungsi ini.
  17. Buat instance ClassA dan beri nama a.
  18. Gunakan instance kelas di atas dan fungsi set_a() untuk menetapkan nilai 20 ke variabel a.
  19. Mencetak beberapa teks di samping nilai variabel a pada konsol. Nilai variabel a diperoleh dengan memanggil fungsi get_a().
  20. Program harus mengembalikan nilai setelah berhasil diselesaikan.
  21. Akhir dari isi fungsi main().

Contoh 3:

#include <iostream>
using namespace std;
class ParentClass {
protected:
	int value;
};
class ChildClass : public ParentClass {
public:
	void setId(int x) {
		value = x;
	}
	void displayValue() {
	cout << "Value is: " << value << endl;
	}
};
int main() {
	ChildClass c;
	c.setId(21);
	c.displayValue();
	return 0;
}

Keluaran:

Berikut adalah screenshot kodenya:

Penjelasan Kode:

  1. Sertakan file header iostream dalam kode kita untuk menggunakan fungsinya.
  2. Sertakan namespace std dalam kode kita untuk menggunakan kelasnya tanpa memanggilnya.
  3. Buat kelas bernama ParentClass.
  4. Gunakan pengubah akses yang dilindungi untuk menandai anggota kelas yang akan dibuat sebagai dilindungi.
  5. Buat variabel integer bernama nilai.
  6. Akhir dari isi kelas.
  7. Buat kelas baru bernama ChildClass yang mewarisi ParentClass.
  8. Gunakan pengubah akses yang dilindungi untuk menandai anggota kelas yang akan dibuat sebagai dapat diakses oleh kelas anak.
  9. Buat fungsi bernama setId() yang mengambil satu nilai integer x.
  10. Menetapkan nilai variabel x ke nilai variabel.
  11. Akhir dari definisi fungsi setId().
  12. Buat fungsi bernama displayValue().
  13. Cetak nilai dari variabel bernama nilai di konsol bersama teks lainnya.
  14. Akhir dari isi fungsi displayValue().
  15. Akhir dari badan kelas bernama ChildClass.
  16. Panggil fungsi main(). Logika program harus ditambahkan dalam isi fungsi ini.
  17. Buat instance ChildClass dan beri nama c.
  18. Gunakan instance kelas di atas dan fungsi setId() untuk menetapkan nilai 21 ke variabel x.
  19. Gunakan instance kelas di atas untuk memanggil fungsi bernama displayValue().
  20. Program harus mengembalikan nilai setelah berhasil diselesaikan.
  21. Akhir dari isi fungsi main().

Fungsi Anggota Kelas

Fungsi membantu kita memanipulasi data. Fungsi anggota kelas dapat didefinisikan dalam dua cara:

Jika suatu fungsi akan didefinisikan di luar definisi kelas, kita harus menggunakan operator resolusi lingkup (::). Ini harus disertai dengan nama kelas dan fungsi.

Contoh 2:

#include <iostream>
#include <string>
using namespace std;
class Guru99
{
public:
	string tutorial_name;
	int id;
	void printname();
	void printid()
	{
		cout << "Tutorial id is: "<< id;
	}
};
void Guru99::printname()
{
	cout << "Tutorial name is: " << tutorial_name;
}
int main() {
	Guru99 guru99;
	guru99.tutorial_name = "C++";
	guru99.id = 1001;
	guru99.printname();
	cout << endl;
	guru99.printid();
	return 0;
}

Keluaran:

Berikut adalah screenshot kodenya:

Penjelasan Kode:

  1. Sertakan file header iostream dalam program kami untuk menggunakan fungsinya.
  2. Sertakan file header string dalam program kami untuk menggunakan fungsinya.
  3. Sertakan namespace std dalam kode kita untuk menggunakan kelasnya tanpa memanggilnya.
  4. Buat kelas bernama Guru99.
  5. Gunakan pengubah akses publik untuk menandai anggota kelas yang akan kita buat sebagai dapat diakses publik.
  6. Buat variabel string bernama tutorial_name.
  7. Buat variabel integer bernama id.
  8. Buat fungsi bernama printname(). Fungsi ini tidak didefinisikan dalam definisi kelas.
  9. Buat fungsi bernama print(). Fungsi ini didefinisikan dalam definisi kelas. Tubuhnya telah ditambahkan dalam definisi kelas.
  10. Cetak nilai id variabel di samping teks lain di konsol. Perhatikan ini telah ditambahkan di dalam tubuh fungsi printid(). Ini hanya akan dijalankan ketika fungsi printid() dipanggil.
  11. Akhir dari isi fungsi printid().
  12. Akhir dari tubuh kelas Guru99.
  13. Awal dari definisi fungsi printname().
  14. Cetak nilai variabel tutorial_name di konsol bersama teks lainnya. Perhatikan ini telah ditambahkan di dalam tubuh fungsi printname(). Ini hanya akan dijalankan ketika fungsi printname() dipanggil.
  15. Akhir dari definisi fungsi printname().
  16. Panggil fungsi main(). Logika program harus ditambahkan dalam isi fungsi ini.
  17. Buat instance kelas Guru99 dan beri nama guru99.
  18. Gunakan contoh di atas untuk menetapkan nilai C++ ke variabel tutorial_name.
  19. Gunakan instance guru99 untuk menetapkan nilai 1001 ke id variabel.
  20. Gunakan instance guru99 untuk memanggil fungsi printname() .
  21. Panggil perintah akhir (baris akhir) untuk mencetak baris kosong baru di konsol.
  22. Gunakan instance guru99 untuk memanggil fungsi printid().
  23. Program harus mengembalikan nilai setelah berhasil diselesaikan.
  24. Akhir dari isi fungsi main().

Konstruktor dan Penghancur

Apa itu Konstruktor?

Konstruksi adalah fungsi khusus yang menginisialisasi objek. Kompiler C++ memanggil konstruktor saat membuat objek. Konstruktor membantu memberikan nilai kepada anggota kelas. Tentu saja, ini setelah mereka mengalokasikan beberapa ruang memori.

Apa itu Destruktor?

Destruktor di sisi lain membantu menghancurkan objek kelas.

Nama konstruktor harus sama dengan nama kelas. Konstruktor tidak memiliki tipe pengembalian.

Konstruktor dapat didefinisikan di dalam atau di luar badan kelas. Jika didefinisikan di luar badan kelas, itu harus didefinisikan dengan nama kelas dan operator resolusi ruang lingkup (::).

Contoh 3:

#include <iostream>  
using namespace std;
class ClassA {
public:
	ClassA() {
		cout << "Class constructor called"<<endl;
	}
	~ClassA() {
		cout << "Class destructor called"<<endl;
	}
};

int main() {
	ClassA a;
	int p = 1;
		if (p) {
			ClassA b; 
		}   
}

Keluaran:

Berikut adalah screenshot kodenya:

Penjelasan Kode:

  1. Sertakan file header iostream ke dalam kode untuk menggunakan fungsinya.
  2. Sertakan namespace std dalam kode kita untuk menggunakan kelasnya tanpa memanggilnya.
  3. Buat kelas bernama ClassA.
  4. Gunakan pengubah akses publik untuk menandai anggota yang akan kita buat sebagai dapat diakses publik.
  5. Buat konstruktor untuk kelas.
  6. Teks untuk dicetak di konsol saat konstruktor dipanggil. Endl adalah kata kunci C++, yang berarti garis akhir. Ini memindahkan kursor mouse ke baris berikutnya.
  7. Akhir dari badan konstruktor kelas.
  8. Buat destruktor untuk kelas.
  9. Teks untuk dicetak di konsol saat destruktor dipanggil. Endl adalah kata kunci C++, yang berarti garis akhir. Ini memindahkan kursor mouse ke baris berikutnya.
  10. Akhir dari tubuh penghancur.
  11. Akhir dari isi kelas.
  12. Panggil fungsi main(). Logika program harus ditambahkan dalam isi fungsi ini.
  13. Buat objek kelas dan beri nama a. Konstruktor akan dipanggil.
  14. Buat variabel integer bernama p dan beri nilai 1.
  15. Buat blok pernyataan if menggunakan variabel p.
  16. Buat objek kelas dan beri nama b. Penghancur akan dipanggil.
  17. Akhir dari isi pernyataan if.
  18. Akhir dari isi fungsi main().

Ringkasan:


Bahasa C

  1. C# Kelas dan Objek
  2. Kelas dan Objek C++
  3. Fungsi teman C++ dan Kelas teman
  4. Template Kelas C++
  5. Operator di C++ dengan Contoh:Apa itu, Jenis dan Program
  6. C++ Switch Case Statement dengan CONTOH
  7. C++ Alokasi Dinamis Array dengan Contoh
  8. Struktur C++ Dengan Contoh
  9. std::daftar di C++ dengan Contoh
  10. Perbedaan antara Struktur dan Kelas:Dijelaskan dengan Contoh C++