Class

Membuat Class

cara membuat class:

class nama_class

{

data_member;

function_member;

};

contoh:

class DASAR

{

public:

DASAR();

~DASAR();

private:

int x;

int y;

void printLabel(char *);

public:

char *label;

void setLabel();

};

Pada contoh diatas, kita telah membuat class dengan nama DASAR dengan data member adalah x, y, *label juga mempunyai function member yaitu DASAR(), ~DASAR() dan setLabel().

Untuk apa fungsi DASAR() dan ~DASAR() ?

Fungsi DASAR() adalah konstruktor dari kelas DASAR.

Fungsi ~DASAR() adalah destruktor dari kelas DASAR.

Apa yang dimaksud konstruktor? Apa gunanya? Bagaimana cirinya?

Konstruktor adalah fungsi yang pertama kali dipanggil saat suatu object class diciptakan/di-inherit.

Kegunaanya adalah terserah programmer, misalnya jika kita ingin menginisialisasi suatu data member pada saat pertama-kali object diciptakan, maka proses inisialisasi tersebut dapat kita tuliskan dalam fungsi konstruktor.

Ciri suatu fungsi sebagai konstruktor adalah:

  1. Mempunyai nama yang sama dengan nama class.
  2. Tidak mempunyai tipe keluaran.
  3. Selalu mempunyai akses public.

Apa yang dimaksud Destruktor? Apa gunanya? Bagaimana Cirinya?

Destruktor adalah fungsi yang dipanggil saat suatu object class dimusnahkan.

Kegunaanya adalah terserah programmer, misalnya jika kita ingin membebaskan memori yang merupakan member object, yang telah kita alokasikan, maka proses pembebasan alokasi memori ini dapat kita letakkan pada Destruktor

Ciri suatu fungsi sebagai destruktor adalah:

  1. Mempunyai nama yang sama dengan nama class, namun diawali tanda ~.
  2. Tidak mempunyai tipe keluaran.
  3. Selalu mempunyai akses public.

Pada class diatas, hanyalah suatu kerangka object, implementasinya kira-kira adalah seperti berikut ini:

DASAR::DASAR()

{

//isi konstruktor

}

DASAR::~DASAR()

{

//isi destruktor

}

void DASAR::setLabel()

{

//implementasi fungsi setLabel

}

void DASAR::printLabel(char *)

{

//implementasi fungsi setLabel

}

Apa maksud public, private diatas?

Lihat pada topik “tipe akses“!

Tips:

Buat file .h (header) yang berisi kerangka object dan file .cpp (source) yang berisi implementasi dari class dan jangan lupa include kan file .h nya.

Contoh file header (dasar.h):

#ifndef DASAR_H

#define DASAR_H

class DASAR

{

public:

DASAR();

~DASAR();

private:

int x;

int y;

void printLabel(char *);

public:

char *label;

void setLabel();

};

#endif

contoh implementasi class (dasar.cpp)

#define “dasar.h”

DASAR::DASAR()

{

//isi konstruktor

}

DASAR::~DASAR()

{

//isi destruktor

}

void DASAR::setLabel()

{

//implementasi fungsi setLabel

}

void DASAR::printLabel()

{

//implementasi fungsi setLabel

}

Tidak ada komentar:

Posting Komentar