Home » C++ » Konstruktor di C++ – Kode dan Contohnya

Konstruktor di C++ – Kode dan Contohnya

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Konstruktor

Konstruktor dalam C ++ adalah metode khusus yang dipanggil secara otomatis ketika objek kelas dibuat.

Untuk membuat konstruktor, gunakan nama yang sama dengan kelas, diikuti dengan tanda kurung ():

Contoh :

#include <iostream>
using namespace std;

class MyClass {     // The class
  public:           // Akses specifier
    MyClass() {     // Konstruktor
      cout << "Hello World!";
    }
};

int main() {
  MyClass myObj;    // Buat objek MyClass (untuk memanggil konstruktor)
  return 0;
}

Output :

Catatan: Konstruktor memiliki nama yang sama dengan kelas, selalu publik dan tidak memiliki nilai yang dikembalikan.

Parameter Konstruktor

Konstruktor juga dapat mengambil parameter (seperti fungsi biasa), yang dapat berguna untuk menyetel nilai awal atribut.

Kelas berikut memiliki atribut brandmodel dan year serta konstruktor dengan parameter berbeda. Di dalam konstruktor, kita akan menetapkan atribut yang sama dengan parameter konstruktor (brand=x , dll). Saat kita memanggil konstruktor (dengan membuat objek kelas), kita meneruskan parameter ke konstruktor yang akan menetapkan nilai atribut terkait ke sama:

Contoh :

#include <iostream>
using namespace std;

class Car {        // The class
  public:          // Akses specifier
    string brand;  // Atribut
    string model;  // Atribut
    int year;      // Atribut
    Car(string x, string y, int z) {  // Konstruktor dengan parameter
      brand = x;
      model = y;
      year = z;
    }
};

int main() {
  // Buat objek Car dan panggil konstruktor dengan nilai berbeda
  Car carObj1("BMW", "X5", 1999);
  Car carObj2("Ford", "Mustang", 1969);

  // Cetak Nilai
  cout << carObj1.brand << " " << carObj1.model << " " << carObj1.year << "\n";
  cout << carObj2.brand << " " << carObj2.model << " " << carObj2.year << "\n";
  return 0;
}

Output :

Sama seperti fungsi, konstruktor juga dapat didefinisikan di luar kelas. Pertama, deklarasikan konstruktor di dalam kelas lalu tentukan di luar kelas dengan menentukan nama kelas, diikuti oleh scope resolution operator :: , diikuti dengan nama konstruktor (yang sama dengan kelasnya) :

Contoh :

#include <iostream>
using namespace std;

class Car {        // The class
  public:          // Akses specifier
    string brand;  // Atribut
    string model;  // Atribut
    int year;      // Atribut
    Car(string x, string y, int z); // Deklarasi konstruktor
};

// Definisi Konstruktor di luar class
Car::Car(string x, string y, int z) {
  brand = x;
  model = y;
  year = z;
}

int main() {
  // Buat objek Car dan panggil konstruktor dengan nilai berbeda
  Car carObj1("BMW", "X5", 1999);
  Car carObj2("Ford", "Mustang", 1969);

  // Cetak Nilai
  cout << carObj1.brand << " " << carObj1.model << " " << carObj1.year << "\n";
  cout << carObj2.brand << " " << carObj2.model << " " << carObj2.year << "\n";
  return 0;
}

Output :

You may also like