OBJEK LANJUT. Oleh : Rasim Ilkom UPI

dokumen-dokumen yang mirip
OVERLOADING OPERATOR. Oleh: Rasim Ilkom - UPI

C V.S. C++ Oleh : Rasim

INHERITANCE. Oleh: Rasim ILKOM-FPMIPA-UPI

Penggunaan Private dan Public dalam C++

Pemrograman Berorientasi Obyek (C++) Departemen Ilmu Komputer FMIPA IPB 2013

POLYMORPHISM. Oleh: Rasim Ilkom- FPMIPA Universitas Pendidikan Indonesia

BAB VII PEWARISAN FUNGSI VIRTUAL

BAB VII PEWARISAN. Dengan demikian, kesalahan indeks dalam program berikut akan terdeteksi:

Implementasi Queue menggunakan Array. Imam Fahrur Rozi

PERTEMUAN V PEMROGRAMAN TERSTRUKTUR DENGAN VISUAL C Setiap bahasa C mempunyai satu fungsi dengan nama main (program utama).

Object Oriented Programming (OOP)

PERTEMUAN X. Gbr.1 Konsep program dibagi menjadi sejumlah modul. void main() { fungsi a();

FUNGSI. tipe Tipe nilai yang dihasilkan oleh fungsi. Jika tidak dinyatakan, hasil fungsi dianggap bilangan bulat (int)

VARIABEL & TIPE DATA PEMROGRAMAN C++

MODUL ALGORITMA DAN PEMROGRAMAN. STMIK AMIKOM Yogyakarta. Rajif Agung Yunmar, S.Kom., M.Cs.

Konsep Dasar Pemrograman Dan Pengenalan C++

OBJECT ORIENTED PROGRAMMINGS

MODUL VI OBJECT ORIENTED PROGRAMMING (OOP)

Pengenalan C++ Oleh : Dewi Sartika

12.Objek. S. Indrianii L, M.T

MODUL 5 PERULANGAN (LOOPING)

SUB PROGRAM P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

Bahasa Pemrograman :: Object Oriented Programming

Pengenalan Array. Array Satu Dimensi

Michael Lionardi

Part 2 - Algoritma & Pemrograman Konsep dasar Pemrograman

Fungsi Lanjut DASAR PEMROGRAMAN

Inheritance dan Polimorfisme

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

PENGENALAN C++ Bab 1

Algoritma Pemrograman & Struktur Data

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

BAB VI OBYEK DAN KELAS

BAB VI OBYEK DAN KELAS

Kurikulum Qt. Chapter 5 Pointer dan References. Agenda. Apa itu Pointer? Memory Komputer. Mengambil Alamat Memory dari Variabel

Algoritma dan Struktur Data. Pertemuan 5 Pointer

Algoritma Pemrograman & Struktur Data

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

Pernyataan FOR Pernyataan WHILE Pernyataan REPEAT. Dewi Sartika,M.Kom

INTERAKSI ANTAR OBJECT

TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2016

SENARAI BERANTAI (LINK LIST)

Paradigma Pemrograman Berorientasi Objek

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

Array Dimensi Satu. Pendahuluan. Slamet Kurniawan, S.Kom

MODUL 1 Alur Seleksi dengan C++

MODUL 7 FUNGSI A. Tujuan. B. Petunjuk. C. Dasar Teori

Selection / Pemilihan PEMILIHAN

PENGENALAN BAHASA C DAN C++

Komentar, Identifier, Konstanta dan Variabel

PEWARISAN D E W I S A R T I K A, M. K O M

/* File program : tukar1.c Untuk melihat pengaruh pemanggilan nilai pada fungsi untuk penukaran dua data */

Konsep Pemrograman. Bab 8. Fungsi 2. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

BAB III FUNGSI DAN MODULASI DALAM PROGRAM

8.1 FUNGSI, DEKLARASI DAN DEFINISI NYA

STRUKUR KENDALI : PERCABANGAN

Kisi-Kisi Ujian Akhir Semester Algoritma dan Pemrograman Lanjut

BAB VIII SUB PROGRAM : Fungsi Tanpa Pengembalian Nilai

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++

Function Template Pertama - tama mari kita membahas tentang function template.untuk itu marilah kita perhatikan contoh berikut.

BAB 6 FUNGSI TUJUAN PRAKTIKUM

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA FAKULTAS ILMU KOMPUTER UNIVERSITAS BRAWIJAYA

Pertemuan 11 Object Oriented Program

BAB VII. FUNCTION. A. Pengantar Function. #include <iostream.h> #include <conio.h> { clrscr(); // detail function

Pemograman Berorientasi Objek. Week 4 Initialization dan Instance dalam Kelas

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

ARRAY DIMENSI 1 & 2. Array dapat didefinisikan sebagai suatu himpunan hingga elemen yang terurut dan homogen.

C++ Mathematic Functions

PROSEDUR DAN FUNGSI (PROCEDURE & FUNCTION)

Sedangkan bentuk umum pendefinisian fungsi adalah : Tipe_fungsi nama_fungsi(parameter_fungsi) { statement statement... }

Fungsi. Fungsi. Dasar Komputer & Pemrograman 1. dipecah Sub Program. Program. Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD

Baca Tulis File. Untuk dapat membaca atau menulis data dari/ke sebuah file maka langkah yang perlu dilakukan adalah:

PEMROGRAMAN BERORIENTASI OBJEK STRUCTURE & CLASS

Imam Fahrur Rozi. Algoritma dan Pemrograman SELEKSI KONDISI

MODUL. Perulangan (Looping) Modul Praktikum C++ Pemrograman Dasar. Semester Genap 2017/2018

Minggu III STRUKTUR PEMILIHAN (KONTROL PROGRAM)

Kurikulum Qt. Chapter 8 - Polymorphism. Polimorfisme. Problema Pewarisan Tunggal (Single Inheritance)

A. Putting a Program Together

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera

Jobsheet 09. Overloading and Overriding Method

BAB VI. STATEMENT CONTROL

a. Array berdimensi satu o Setiap elemen array dapat diakses melalui indeks. o Indeks array (subscript) secara default dimulai dari 0.

PENGENALAN DAN PENERAPAN OOP PADA C++

INF-103 Pemrograman II VECTOR & STRING. Dr. Taufik Fuadi Abidin, M.Tech Irvanizam Zamanhuri, M.Sc. Program Studi Informatika FMIPA UNIVERSITAS KUALA

REPRESENTASI FISIK LIST LINEAR

Identifier dan Tipe Data

PERULANGAN PROSES. Proses perulangan ditandai dengan mekanisme yang disebut loop. Proses Loop : Proses yang berulang-ulang

Fungsi 2 DASAR PEMROGRAMAN

Array ARRAY BERDIMENSI SATU. Representasi (Pemetaan) di memori. Lihat gambar dibawah ini, nilai data A (18) dismpan mulai dari alamat 1136 di memori.

A. Putting a Program Together

Pertemuan 2 ARRAY DIMENSI 1 & 2

PERTEMUAN 9-11 STATEMENT

Sekilas C DAN C++ DISUSUN OLEH. Sebuah bahasa, yaitu: 1. Bahasaa tingkat tinggi. High. dapat. lunak

pada program di atas, akan ditampilkan alamat memori dari variabel x, bukan nilai x.

Untuk mengurangi pengulangan program yang sama agar program menjadi terstruktur, rapi dan lebih mudah dikembangkan.

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

# FOUR LOOPING. JAWABAN 1. #include <stdio.h> #include <conio.h> #define pi void main(){

FUNGSI II. Variabel Statis. Sifat variabel statis: Sintaks: static tipe_data nama_variabel; Contoh: static int angka;

Transkripsi:

OBJEK LANJUT Oleh : Rasim Ilkom UPI

Objek Lokal & Global Class ABC{ char nama[20]; public: ABC(char *nama); ~ABC(); ; ABC x( x ); Objek Global Void main(){ cout << Awal fungsi main << endl; ABC y( y ); Objek Lokal ABC z( z ); cout << Akhir fungsi main << endl; ABC ::ABC(char *nama){ strcpy(abc::nama,nama); cout << konstruktor cout << ABC::nama << dijalankan << endl; ABC::~ABC(){ cout<< Destruktor << nama << dijalankan <<endl; 2

Objek Lokal & Global..2 Class ABC{ char nama[20]; public: ABC(char *nama); ~ABC(); ; ABC x( x ); Void main(){ cout << Awal fungsi main << endl; ABC y( y ); ABC z( z ); exit(1); ABC ::ABC(char *nama){ strcpy(abc::nama,nama); cout << konstruktor cout << ABC::nama << dijalankan << endl; ABC::ABC(){ cout<< Destruktor << nama << dijalankan <<endl; Menyebabkan main tidak selesai 3

OOP dengan ADT /* buku.h */ #ifndef buku #define buku Class Buku{ char judul[35]; char pengarang[25]; int jumlah; public: Buku(char *judul= judul, char *pengarang= Pengarang, int jumlah=0); void info(); ; #endif Body. 4

OOP dengan ADT..2 /* buku.cpp */ #include <iostream.h> #include <string.h> #include buku.h Buku(char *judul= judul, char *pengarang= Pengarang, int jumlah=0){ strcpy(buku::judul,judul); strcpy(buku::pengarang,pengarang); Buku::jumlah = 0; void info(){ cout << Judul : << judul << endl; cout << Pengarang : << pengarang << endl; cout << Jumlah : << jumlah << \n << endl; Driver. 5

OOP dengan ADT..3 /* testbuku.cpp */ #include <iostream.h> #include <conio.h> #include buku.h void main(){ Buku literatur; Buku novel( The Eagle Has Flown, Jack Hinggis, 1); literatur.info(); novel.info(); 6

Pointer ke Objek & Objek Dinamis /* ptrobjek */ #include <iostream.h> #include <conio.h> #include buku.h nonfiksi void main(){ Buku *nonfiksi; C++ Abdul Khadir 2 nonfiksi =new Buku( C++, Abdul Khadir, 2); nonfiksi info(); Nonfiksi info() sama dengan (*nonfiksi).info(); 7

Objek Sebagai Parameter Melewatkan objek sebagai parameter dapat dilakukan dengan: Melewatkan objek berdasar nilai Melewatkan objek sebagai pointer Melewatkan objek sebagai referensi 8

Melewatkan objek berdasar nilai Definisi prosedur: Void info_buku(buku b){ cout << informasi buku << \n << endl; b.info(); Pemanggilan: Buku novel; Info_buku(novel); 9

Melewatkan objek berdasar Pointer Definisi prosedur: Void info_buku(buku *b){ cout << informasi buku << \n << endl; (*b).info(); /* atau b info(); */ Pemanggilan: Buku novel; Info_buku(&novel); 10

Melewatkan objek berdasar Referensi Definisi prosedur: Void info_buku(buku &b){ cout << informasi buku << \n << endl; b.info(); Pemanggilan: Buku novel; Info_buku(novel); 11

NILAI BALIK BERUPA OBJECT Class Buah { int apel; int jeruk; public: Buah(int jum_apel=0, int jml_jeruk=0); void info_buah(); Buah tambah(buah b2); ; 12

NILAI BALIK BERUPA OBJECT..2 void main(){ Buah buah1(20, 5); Buah buah2(12, 4); Buah buah3; Buah::Buah(int jum_apel, int jum_jeruk){ apel =jum_apel; jeruk=jum_jeruk; buah3 = buah1.tambah(buah2); cout<< objek buah 1 << endl; buah1.info_buah(); cout<< objek buah 2 << endl; buah2.info_buah(); cout<< objek buah 3 << endl; buah3.info_buah(); void Buah::info(){ cout<< Jumlah apel = << apel << Jeruk = << jeruk << \n << endl; Buah Buah::tambah(Buah b2){ Buah tmp; tmp.apel = apel+b2.apel; tmp.jeruk = jeruk + b2.jeruk; return(tmp); 13

Data Anggota Bersifat Statis class klasstatis{ public: statis int x; ; kelasstatis() { x++; void info(){ cout << x = << x << endl; 14

Data Anggota Bersifat Statis..2 Klasstatis::x=0; /* inisialisasi */ Void main(){ klasststis x,y,z; x.info(); y.info(); z.info(); kelasstatis w; w.info(); cout << Jumlah Class berklas statis\n << yang telah diciptakan = << klasstatis::x << buah << endl; 15

Fungsi Anggota Bersifat Statis class klasstatis{ public: statis int x; ; kelasstatis() { x++; void info(){ cout << x = << x << endl; statis int nilai_x(){ return (x); 16

Fungsi Anggota Bersifat Statis..2 Klasstatis::x=0; /* inisialisasi */ Void main(){ klasststis x,y,z; x.info(); y.info(); z.info(); kelasstatis w; w.info(); cout << Jumlah Class berklas statis\n << yang telah diciptakan = << klasstatis::nilai_x << buah << endl; 17

Pointer ke Fungsi Anggota Sintak : tipe(nama_class::*namapointer)(parameter, ); Jika nama_class mempunyai nilai balik void, maka void(nama_class::*namapointer)(void); Pernyataan untuk menunjuk ke fungsi anggota: Namapointer=&nama_class::fungsi_anggota 18

Contoh class Klassx{ public: void fung_1(){ cout<< Fung 1 dijalankan << endl; void fung_2(){ cout<< Fung 2 dijalankan << endl; ; void fung_3( int a, int b){ return(a+b); 19

Contoh..2 void main(){ void (klassx::*ptr_fungsi) (void); klassx x; cout<< Via fungsi anggota << endl; x.fung_1(); x.fung_2(); cout<< 5+8 <<x.fung_3(5,8) << endl; cout<< \n via pointer ke fungsi anggota << endl; ptr_fungsi=&klassx::fung_1; (x.*ptr_fungsi)(); ptr_fungsi=&klassx::fung_2; (x.*ptr_fungsi)(); Int (klassx::*ptr_fungsi2)(int, int); Ptr_fungsi2=&klassx::fung_3; cout<< 5+8 <<(x.*ptr_fungsi2)(5,8)<<endl; 20