Class C++ Dasar - Amazing Indonesia

Latest

Thursday 22 March 2012

Class C++ Dasar

Pemr ogram a n C++ m e me rlukan pem a ha man yang me madai untuk me nterjema hkan desain ke dalam bentuk im pleme ntasi,  terutama  untuk desain yang m e nggunaka n abstraksi class. Fokus pem bahasan  pada aspek pem bentukan obyek (c onst r uc ti on )
sebuah class, dan proses seba liknya pada saat obyek terse but sudah tidak digunakan lagi 
( destruction). 

Deklarasi dan Definisi 

Deklarasi dan definisi adalah  langkah awal d a lam  setiap penulisan program  tidak 
terkecuali dalam  bahasa C++. Deklarasi da n definisi diperlukan untuk semua  tipe data 
term asuk tipe data bentukan user ( user-defined type). 

Bentuk sederhana deklarasi class adalah sebagai berikut, 
class C { };  atau  
struct C { }; 

dalam bahasa C++  struct dan class  me mpunyai pengertian yang sama . Deklarasi 
class dengan struct me mpunyai anggota denga n akses public kecuali jika dinyatakan
lain.

struct C
{
   int i;
   void f();
}
class C
{
public:
   int i;
   void f();
}


Kedua deklarasi tersebut me mpunyai arti yang sama .

Hal ini adalah pilihan desain yang diambil oleh desainer  C+ + (Bja rne Stroustrup) untuk
me nggunaka n C sebagai basis C++ ketim bang membuat bahasa yang sam a  sekali baru.
Tentunya ada konsekuensi atas pilih an desa in ini, salah satu contoh adalah
kom patibilitas terhadap bahasa C.

Dalam bahasa C deklarasi,

struct C { … };

me nyatakan C sebagai nama  tag. Na ma  tag berbeda dengan nam a  tipe, sehingga C
(nama tag) tidak dapat dipergunakan dala m deklarasi yang me mbutuhkan C sebagai
suatu tipe obyek. Kedua contoh deklarasi be rikut ini tidak valid dalam  bahasa C,

C c;     /* error, C adalah nama tag */
C *pc;   /* error, C adalah nama tag */

Dalam bahasa C, kedua deklarasi tersebut harus ditulis sebagai berikut,

struct C c;
struct C *pc;

atau m e nggunakan  typedef sebagai berikut,

struct C { … };
typedef struct C C;

C c;
C *pc;

C++ m e mp erlakukan nama  class, C sebagai nama  tag sekaligus nam a  tipe dan dapat
dipergunakan dalam deklarasi. Kata class  tetap dapat dipergunaka n dalam deklarasi,
seperti contoh berikut ini,

class C c;

Dengan demi kian C++  tidak m e mbedakan nama tag dengan nama  class, paling tidak
dari sudut pandang pemrogram  ( programmer), dan tetap m e nerima  deklarasi st ruct ur e
seperti dala m bahasa C. Kompatibilitas C++  terhadap tidak sebatas perb edaan nama  tag
dan nam a  ti pe, karena standar C++ m a sih  perlu me ndefinisikan tipe P OD (Plain Old
Data). POD type m e mpunyai banyak persam aan dengan structure dalam  C. Standar C++
me ndefinisikan POD t ype sebagai obyek suatu class yang tidak mem punyai user-defined constructor, anggota protected ma upu n private, tidak punya base class, dan
tidak me miliki fungsi virtual.

Download Artikel Lengkapnya :
Class C++ Dasar.pdf

No comments:

Post a Comment