Jumat, 25 September 2009


# Constructor

Constructor adalah dimana fungsi yang otomatis di eksekusi saat suatu objek dibuat itu sendiri, destructor sebaliknya

// example on constructors and destructors

#include

class CRectangle {

int *width, *height;

public:

CRectangle (int,int);

~CRectangle ();

int area (void) {return (*width * *height);}

};

CRectangle::CRectangle (int a, int b) {

width = new int;

height = new int;

*width = a;

*height = b;

}

CRectangle::~CRectangle () {

delete width;

delete height;

}

int main () {

CRectangle rect (3,4), rectb (5,6);

cout << "rect area: " <<>

cout << "rectb area: " <<>

return 0;

}

Keterangan :

Program diatas menggunakan constructor untuk memberi nilai variable height dan width.

Constructornya adalah sbb:

CRectangle::CRectangle (int a, int b) {

width = new int;

height = new int;

*width = a;

*height = b;

}

Karena nantinya space memori yang ditempati height dan width akan dibebaskan setelah selesai maka keduanya dideklarasikan sebagai dynamic variable (pointer). Hanya dynamic variable yang dapat dihilangkan dari memori. Pembebasan memori menggunakan destructor sbb :

CRectangle::~CRectangle () {

delete width;

delete height;

}

Outputnya


#overriding

overriding adalah pembuatan fungsi ( method ) dengan nama yang sama namun dengan signature yang berbeda. contoh fungsi tambah. Kita bisa bikni dua atau lebih fungsi tambah dengan parameter yang berbeda misalnya int tambah( int a, int b ) dan float tambah( float a, float b ) ntar fungsi yang dieksekusi sesuai dengan argument yang dimasukan.

// overloading class constructors

#include

class CRectangle {

int width, height;

public:

CRectangle ();

CRectangle (int,int);

int area (void) {return (width*height);}

};

CRectangle::CRectangle () {

width = 5;

height = 5;

}

CRectangle::CRectangle (int a, int b) {

width = a;

height = b;

}

int main () {

CRectangle rect (3,4);

CRectangle rectb;

cout << "rect area: " <<>

cout << "rectb area: " <<>

}

Keterangan :

Pada contoh 3.3. diatas digunakan dua constructor yakni :

  1. default konstructor

CRectangle::CRectangle () {

width = 5;

height = 5;

}

  1. copy constructor

CRectangle::CRectangle (int a, int b) {

width = a;

height = b;

}

Outputnya

Rabu, 09 September 2009

artikel tentang OOP

Pengertian

Object Oriented Programming atau yang lebih dikenal dengan OOP adalah pemrograman yang menitikberatkan kepada objek-objek untuk menyelesaikan tugas atau proses dari program tersebut. Sedangkan penitikberatkan ini dimaksudkan adanya interaksi pengiriman nilai, pesan atau pernyataan antar objek. Kemudian objek yang merespon hasil dari interaksi tersebut akan membentuk suatu tindakan atau aksi (methode).

Class

Calss merupakan gambaran atau abstraksi karakter dan sifat dari suatu objek. Class juga dapat mendefinisikan ciri dan perilaku objek tersebut.

Object

Object (objek) adalah suatu data atau entitas yang berwujud maupun tidak berwujud, memiliki sifat (karakteristik) tertentu sesuai dengan kondisi atau status dari penggunaannya. Data atau entitas di dalam pemrograman dapat disebut dengan blok fungsi.

INI ADALAH SOURCE CODE OOP,.....

#include "iostream.h"
class persegi_panjang
{
private:
int panjang;
int lebar;
int luas;
public:
void input()
{
cout<<"masukkan panjang=";
cin>>panjang;
cout<<"masukkan lebar=";
cin>>lebar;
}
void hitung()
{
luas=panjang*lebar;
}
void output()
{
cout<<"Luas="<
}
};
void main()
{
persegi_panjang A;
A.input();
A.hitung();
A.output();
}