Thursday, June 14, 2012

Konstruktor


#include <iostream.h>
#include <conio.h>
#include <string.h>

class mahasiswa
{
    private:
        char nim[10];
        char nama[30];
        int nilai;
    public:
        mahasiswa();       //konstruktor
        ~mahasiswa();     //destruktor
        void tampil();
};

mahasiswa :: mahasiswa()
{
    cout<<"Konstruktor dijalankan..\n";
    strcpy(nim, "201081016");
    strcpy(nama, "Patricia Dianita Wijaya");
    nilai = 95;
}

mahasiswa :: ~mahasiswa()
{
    cout<<"Destruktor dijalankan...\n";
}

void mahasiswa :: tampil()
{
    cout<<"NIM : "<<nim;
    cout<<"\nNAMA : "<<nama;
    cout<<"\nNILAI : "<<nilai;
}

int main()
{
    mahasiswa mhs;
    mhs.tampil();
    getch();
}

INHERITANCE


#include<iostream>
#include<conio.h>
#include<string.h>
using namespace std;

class buku
{      private:
              char judul[35];
              char pengarang[25];
              long harga;
       public:
             buku (char *judul, char *pengarang, long harga);
             void info_buku(); };

class disket
{      private:
             char ukuran [25];
              long harga;
      public:
             disket(char *ukuran, long harga);
             void info_disket();
};

class paketbukudisket : public buku, public disket
{      private:
             long harga;
      public:
             paketbukudisket(char *judul, char *pengarang, long harga_buku, char *ukuran, long harga_disk);
             void info_paket();
};

int main()
{    paketbukudisket cpp("C++", "Alakadabra", 25000, "3 1/2 inci", 12000);
      cpp.info_paket(); }

buku::buku(char*judul, char *pengarang, long harga)
{                       strcpy(buku::judul, judul);
                        strcpy(buku::pengarang, pengarang);
                        buku::harga=harga; }

void buku::info_buku()
{     cout<<" Judul buku    : "<<judul<<endl;
       cout<<" Pengarang     : "<<pengarang<<endl;
       cout<<" Harga buku    : "<<harga<<endl; }

disket::disket(char *ukuran, long harga)
{                    strcpy(disket::ukuran, ukuran);
                     disket::harga = harga; }

void disket::info_disket()
{     cout<<" Ukuran disket : "<<ukuran<<endl;
       cout<<" Harga disket  : "<<harga<<endl; }

paketbukudisket::paketbukudisket(char *judul, char *pengarang, long harga_buku, char *ukuran, long harga_disket):
                                      buku(judul, pengarang, harga_buku),disket(ukuran, harga_disket)
{            harga = harga_buku + harga_disket; }

void paketbukudisket::info_paket()
{     info_buku();
      info_disket();

    cout<<" Harga Total   : "<<harga<<endl;
     getch(); }

Polimorfisme

1. Pewarisan Tunggal

Menggunakan virtual. Fungsinya, virtual yang dideklarasikan dalam suatu metode dalam kelas dasar, maka keadaan virtual tetap berlaku di seluruh kelas turunan meski tidak disebutkan kata virtual.

2. Pewarisan Jamak

Konsepnya sama dengan pada pewarisan tunggal, hanya saja, kata virtual harus disebutkan di setiap kelas dasar yang dirancang.

3. Pewarisan Jamak Virtual

Konsep tidak jauh berbeda. Kata virtual dipakai di kelas dasar yang dirancang sehingga metode tersebut dinamis.

Contoh program Polimorfisme


/*
Contoh program Polimorfisme
*/


#include <iostream>
#include <conio.h>
#include <string.h>


using namespace std;


class Manusia 
{
    protected:
    string nama;
    string alamat;
    public:
    Manusia(string nama, string alamat):nama(nama), alamat(alamat){}
   
    void judul()
    {
             cout<<"\n Kelas Manusia!"<<endl;
        }
    
    virtual void tampil_data() //menggunakan fungsi virtual
        {
            cout<<"\n =========================";
    cout<<"\n\t MANUSIA"<<endl;
    cout<<" =========================";
    cout<<"\n Nama     : "<<nama<<endl;
    cout<<" Alamat   : "<<alamat<<endl;
    cout<<" ========================="<<endl;
        }
};


class Mahasiswa : public Manusia
{
    private:
    string nim;
    string jurusan;
    public:
    Mahasiswa(string nim, string nama, string jurusan, string alamat):Manusia(nama,
    alamat),nim(nim),jurusan(jurusan){}
   
    void judul()
    {
             cout<<"\n Kelas Mahasiswa!"<<endl;
        }
    
    void tampil_data()
        {
    cout<<"\n =========================";
    cout<<"\n\t MAHASISWA"<<endl;
    cout<<" =========================";
    cout<<"\n NIM      : "<<nim<<endl;
    cout<<" Nama     : "<<nama<<endl;
    cout<<" Jurusan  : "<<jurusan<<endl;
    cout<<" Alamat   : "<<alamat<<endl;
    cout<<" ========================="<<endl;
    }
};


class Pegawai : public Manusia
{
    private:
    string nip;
    string jabatan;
    public:
    Pegawai(string nip, string nama, string alamat, string jabatan):Manusia(nama,
    alamat),nip(nip),jabatan(jabatan){}
   
    void judul()
    {
             cout<<"\n Kelas Pegawai!"<<endl;
        }
    
    void tampil_data()
        {
    cout<<"\n\n =========================";
    cout<<"\n\t PEGAWAI"<<endl;
    cout<<" =========================";
    cout<<"\n NIP      : "<<nip<<endl;
    cout<<" Nama     : "<<nama<<endl;
    cout<<" Alamat   : "<<alamat<<endl;
    cout<<" Jabatan  : "<<jabatan<<endl;
    cout<<" ========================="<<endl;
    }
};


int main()
{
Mahasiswa mhs1("201081016", "Patricia", "Teknik Informatika", "Jakarta");
Pegawai peg1("4321.8765.1234", "Budi", "Surabaya","Direktur");
Manusia *man;                           //definisi pointer ke objek berkelas manusia

    man = &mhs1;                               //menunjuk ke objek berkelas mahasiswa
man->judul();
    man->tampil_data();
    
man = &peg1;                                //menunjuk ke objek pegawai
man->judul();
    man->tampil_data();
    getch();
}

Fungsi Manipulasi String dalam C++


Fungsi Manipulasi String, String dapat dimanipulasi dengan aturan tertentu. Di mana bahasa C++ telah menyediakan semua ini ke dalam pustakanya. Berikut adalah fungsi-fungsi yang digunakan untuk melakukan manipulasi string :
  • Fungsi strcat, Fungsi strcat digunakan untuk menggabungkan dua string menjadi satu.
  • Fungsi strlen, Fungsi strlen digunakan untuk menghitung panjang karakter pada suatu string. strlen adalah fungsi yang bertipe data integer.
  • Fungsi strcpy, Fungsi strcpy digunakan untuk menyalin isi string ke suatu variabel.
  • Fungsi strupr, Fungsi strupr digunakan untuk mengubah semua karakter huruf yang terdapat pada suatu variabel menjadi huruf besar semua (Uppercase).
  • Fungsi strlwr, Fungsi strlwr digunakan untuk mengubah semua karakter huruf yang terdapat pada suatu variable menjadi huruf kecil semua (Lowercase).