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 dinyatakanlain.
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