2. Pendahuluan
Konstruktor dan Destruktor adalah fungsi umum yang
diimplementasikan pada tipe data abstrak.
Sesuai dengan namanya, konstruktor dan destruktor
masing-masing digunakan untuk membuat dan
menghancurkan objek
3. Konstruktor
Konstruktor digunakan untuk membuat atau menginstansiasikan suatu objek.
Konstruktor melibatkan alokasi memori ketika instansiasi dan inisialisasi
objek
Proses instansiasi berarti mengalokasikan sejumlah memory untuk struktur
data yang ditentukan, sedangkan proses inisialisasi berarti menentukan
sebuah nilai awal untuk data yang ada di dalamnya
4. Destruktor
Destruktor digunakan untuk menghancurkan objek.
Fungsi ini dipanggil ketika objek tidak lagi digunakan dan
alokasi memori terhadap objek akan dibersihkan
sepenuhnya dari program
5. Destruktor - 2
Mengapa perlu ada destruktor? tidak cukup dihapus?
Jika kita lupa untuk membersihkan objek-objek yang
sudah tidak lagi dipakai, maka akan terjadi pembengkakan
penggunaan memory yang terus menumpuk. (memory
leak)
Ketika destructor dipanggil, memori yang ditempati akan
dikembalikan atau dikosongkan kembali
7. Contoh Deklarasi di C++
typedef struct Jam{
int Hour;
int Minute;
int Second;
// Jam (); // constructor default
Jam (int HH, int MM, int SS) { // constructor buatan
Hour = HH; Minute = MM; Second = SS;
}
// ~Jam (); // constructor default
~Jam() { cout << telah dihancurkan; }
} Jam;
8. Contoh Deklarasi di C++
int main() {
Jam J(10,11,12);
cout << J.Hour << endl; // akan mengembalikan nilai 10
cout << J.Minute << endl; // akan mengembalikan nilai 11
cout << J.Second << endl; // akan mengembalikan nilai 12
return 0;
}