0% menganggap dokumen ini bermanfaat (0 suara)
7 tayangan20 halaman

Struktur dan Kelas dalam C++

Struct dan Class

Diunggah oleh

erizalpicsi
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
7 tayangan20 halaman

Struktur dan Kelas dalam C++

Struct dan Class

Diunggah oleh

erizalpicsi
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

Struktur & Kelas

Erizal, [Link], [Link]


erizal@[Link]
[Link]
Konsep
 Dalam C++, tipe data struktur yang
dideklarasikan dengan kata kunci struct, dapat
memiliki komponen dengan sembarang tipe
data, baik tipe data dasar maupun tipe data
turunan, termasuk fungsi. Sehingga, tipe data
struktur menjadi sangat berdaya guna.
Contoh
 Misal : kita ingin membentuk tipe data struktur
yang namanya kotak. Maka dapat dideklarasikan
sebagai berikut :
struct tkotak
{
double panjang;
double lebar;
};
tkotak kotak;
 Untuk memberi nilai ukuran kotak tersebut, kita dapat
menggunakan perintah :
[Link] = 10;
[Link] = 7;
Struktur & Fungsi (1)
 Cara lain untuk memberi nilai panjang dan lebar
adalah dengan membentuk suatu fungsi. Karena
fungsi ini hanya digunakan untuk memberi nilai
data panjang dan lebar suatu kotak, tentunya
fungsi ini khusus milik objek kotak, sehingga
harus dianggap sebagai anggota struktur kotak.
 C++ sebagai bahasa pemrograman dapat
mendefinisikan anggota tipe struktur yang
berupa fungsi.
Struktur & Fungsi (2)
 Dengan menambah fungsi tersebut, maka struktur
kotak menjadi lebih jelas bentuknya, seperti berikut :
struct tkotak
{
double panjang;
double lebar;
void SetUkuran(double pj, double lb)
{
panjang = pj;
lebar = lb;
};
};
tkotak kotak;
 Dengan tipe struktur kotak seperti itu, untuk memberi nilai panjang dan lebar
hanya dengan memanggil fungsi SetUkuran() :
[Link](10,7);
Struktur & Fungsi (3)
 Selain punya ukuran panjang dan lebar, kotak
juga mempunyai keliling dan luas. Dengan
demikian, kita dapat memasukkan fungsi untuk
menghitung keliling dan luas ke dalam struktur
kotak.
 Definisi fungsi yang menjadi anggota struktur
dapat ditempatkan di luar tubuh struktur.
Struktur & Fungsi (4)
 Dengan cara ini maka deklarasi struktur kotak
menjadi seperti berikut :
struct tkotak
{
double panjang;
double lebar;
void SetUkuran(double pj, double lb);
double Keliling();
double Luas();
};
tkotak kotak;
Struktur & Fungsi - Contoh
 Contoh penerapan struktur kotak dapat dilihat
dalam program berikut :
#include<iostream.h>
#include<conio.h>
struct tkotak
{
double panjang;
double lebar;
void SetUkuran(double pj, double lb);
double Keliling();
double Luas();
};
Struktur & Fungsi - Contoh
int main()
{
tkotak kotak;
[Link](10,7);
cout<<"Panjang : "<<[Link]<<endl;
cout<<"Lebar : "<<[Link]<<endl;
cout<<"Keliling :
"<<[Link]()<<endl;
cout<<"Luas : "<<[Link]()<<endl;
getch();
return 0;
}
Struktur & Fungsi - Contoh
void tkotak::SetUkuran(double pj, double lb)
{
panjang = pj;
lebar = lb;
}
double tkotak::Keliling()
{
return 2*(panjang+lebar);
}
double tkotak::Luas()
{
return panjang*lebar;
}
Struktur & Fungsi - Contoh
 Tampilan Output :
 Panjang : 10
 Lebar :7
 Keliling : 34
 Luas : 70
Struct & Class
 Bentuk program di atas, adalah contoh gaya
pemrograman berorientasi prosedur (terstruktur).
 Dalam pemrograman berorientasi objek, jika kita telah
menentukan suatu objek tertentu, maka objek tersebut
kita definisikan dalam bentuk tipe baru yang namanya
kelas.
 Tipe data kelas didefinisikan dengan kata kunci
(keyword) class, yang merupakan generalisasi dari
pernyataan struct.
 Pernyataan struct secara umum digantikan dengan
pernyataan class. Jika objek kotak dideklarasikan dalam
bentuk kelas, maka deklarasinya mirip dengan struktur.
Deklarasi
class tkotak
{
double panjang;
double lebar;
public:
void SetUkuran(double pj, double lb);
double Keliling();
double Luas();
};
tkotak kotak;
Deklarasi
 Dalam deklarasi kelas tersebut, muncul kata public.
Data atau fungsi yang dideklarasikan di bawah kata
kunci public mempunyai sifat dapat diakses dari luar
kelas secara langsung. Dalam deklarasi tersebut, variabel
panjang dan lebar tidak bersifat public, sehingga tidak
dapat diakses secara langsung dari luar kelas.
 Perintah-perintah di bawah ini tidak dapat dijalankan :
[Link] = 10;
[Link] = 7;
cout<<”Panjang : ”<<[Link]<<endl;
cout<<”Lebar : “<<[Link]<<endl;
Perbedaan Struktur & Kelas
 Dalam kelas, masing-masing data dan fungsi anggota
diberi sifat tertentu. Jika semua anggota kelas bersifat
public, maka kelas sama dengan struktur.
 Untuk dapat mengakses data panjang dan lebar pada
kelas tkotak harus dilakukan oleh fungsi yang menjadi
anggota kelas dan bersifat public.
 Pada deklarasi kelas tkotak, satu-satunya jalan untuk
memberi nilai panjang dan lebar adalah dengan
menggunakan fungsi SetUkuran().
 Untuk mengambil nilai panjang dan lebar juga harus
dilakukan oleh fungsi yang menjadi anggota kelas.
Misalnya, kita definisikan fungsi GetPanjang() dan
GetLebar() untuk mengambil nilai panjang dan lebar.
Contoh : //program class
#include<iostream.h>
#include<conio.h>
class tkotak
{
double panjang;
double lebar;
public:
void SetUkuran(double pj, double lb);
double Keliling();
double Luas();
double GetPanjang();
double GetLebar();
};
int main()
{
tkotak kotak;
[Link](10,7);
cout<<"Panjang : "<<[Link]()<<endl;
cout<<"Lebar : "<<[Link]()<<endl;
cout<<"Keliling : "<<[Link]()<<endl;
cout<<"Luas : "<<[Link]()<<endl;
getch();
return 0;
}
Contoh
void tkotak::SetUkuran(double pj, double lb)
{
panjang = pj;
lebar = lb;
}
double tkotak::Keliling()
{
return 2*(panjang+lebar);
}
double tkotak::Luas()
{
return panjang*lebar;
}
double tkotak::GetPanjang()
{
return panjang;
}
double tkotak::GetLebar()
{
return lebar;
}
Output
 Tampilan Output :
 Panjang : 10
 Lebar :7
 Keliling : 34
 Luas : 70
Definisi Kelas
 Dapat dilihat dari contoh program, bentuk
pendefinisian kelas adalah sebagai berikut :
Tipe Nama_Kelas::NamaFungsi()
{
IsiFungsi
}

 Untuk mendefinisikan variabel kelas, digunakan


deklarasi :
Nama_Kelas Nama_Variabel;

 Contoh :
Tkotak kotak;
END OF MODUL - 5

Anda mungkin juga menyukai