BAHASA PEMROGRAMAN C++
Bahasa C++ diciptakan oleh Bjarne Stroustrup di
AT&T Bell Laboratories awal tahun 1980-an berdasarkan C ANSI (American
National Standard Institute). Pertama kali, prototype C++ muncul sebagai C yang
dipercanggih dengan fasilitas kelas. Bahasa tersebut disebut C dengan kelas ( C
wih class). Selama tahun 1983-1984, C dengan kelas disempurnakan dengan
menambahkan fasilitas pembeban lebihan operator dan fungsi yang kemudian
melahirkan apa yang disebut C++. Symbol ++ merupakan operator C untuk operasi
penaikan, muncul untuk menunjukkan bahwa bahasa baru ini merupakan versi yang
lebih canggih dari C. Borland International merilis compiler Borland C++ dan
Turbo C++. Kedua compiler ini sama-sama dapat digunakan untuk mengkompilasi
kode C++. Bedanya, Borland C++ selain dapat digunakan dibawah lingkungan DOS,
juga dapat digunakan untuk pemrograman Windows.
PENGERTIAN BAHASA PEMROGRAMAN C++:
C++ merupakan bahasa pemrograman
yang memiliki sifat Pemrograman berorientasi objek, Untuk menyelesaikan
masalah, C++ melakukan langkah pertama dengan menjelaskan class-class yang
merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari
object-object fisik, Class tersebut berisi keadaan object, anggota-anggotanya
dan kemampuan dari objectnya, Setelah beberapa Class dibuat kemudian masalah
dipecahkan dengan Class. Bahasa C adalah bahasa pemrograman
prosedural yang memungkinkan kita untuk membuat prosedur dalam menyelesaikan
suatu masalah. Bahasa pemrograman C++ adalah bahasa
pemrograman yang berorientasi pada objek.
Perbedaan Antara Bahasa pemrograman C dan C++
meskipun bahasa-bahasa tersebut menggunakan sintaks yang sama tetapi mereka
memiliki perbedaan, C merupakan bahasa pemrograman prosedural, dimana
penyelesaian suatu masalah dilakukan dengan membagi-bagi masalah tersebut
kedalam su-submasalah yang lebih kecil, sedangkan untuk C++ merupakan bahasa
pemrograman yang memiliki sifat Pemrograman berorientasi objek, Untuk
menyelesaikan masalah, C++ melakukan langkah pertama dengan menjelaskan
class-class yang merupakan anak class yang dibuat sebelumnya sebagai abstraksi
dari object-object fisik, Class tersebut berisi keadaan object,
anggota-anggotanya dan kemampuan dari objectnya, Setelah beberapa Class dibuat
kemudian masalah dipecahkan dengan Class.
KELEBIHAN DARI BAHASA
PEMROGRAMAN C++ :
- Bahasa C++ tersedia hampir di semua jenis komputer
- Kecepatan program jika dibanding dengan program yang sama buatan bahasa lain, C++ relatif lebih cepat.
- C++ adalah bahasa yang terstruktur, dengan demikian akan lebih mendukung OOP.
- Bahasa Standard-nya ANSI bisa dipakai diberbagai platform
KEKURANGAN DARI BAHASA PEMROGRAMAN
C++:
- Sulitnya untuk membuat sesuatu dengan Bahasa Pemrograman C++ sehingga minat dalam memperdalam programming akhirnya harus terhenti, kecuali dengan inisitif sendiri mempelajari bahasa/teknologi lain.
- C++ tidak murni OOP sehingga kurang cocok untuk mengajarkan Konsep OOP karena kaidah-kaidah OOP dapat dilanggar.
Di
dalam bahasa pemrograman C++ terdapat Pengarah Preprocessor Dalam Bahasa
Pemrograman C atau C++ bagian pertama yang menyusun sebuah tugas,
terbentuk di pengarah preprocessor. Pengarah preprocessor menginstruksikan
compiler untuk membentuk beberapa tugas sebelum komplisasi dimulai. Pengarah
preprocessor #include ,salah satu yang sering terlihat,contoh #include<stdio.h>
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain
sebelum kompilasi dimulai. Pengarah preprocessor yang lain adalah #define,
yang merupakan definisi sebuah macro.
Deklarasi
Global
Bagian utama yang kedua dari sebuah program C++ berisi deklarasi global. Deklarasi global memberitahu compiler fungsi user-defined dan variable (atau konstanta) yang dipakai untuk semua fungsi dalam program sumber. Contoh:
Int sum(int a,int b); // deklarasi fungsi user-defined sum
Int X; // deklarasi variable X
Bagian utama yang kedua dari sebuah program C++ berisi deklarasi global. Deklarasi global memberitahu compiler fungsi user-defined dan variable (atau konstanta) yang dipakai untuk semua fungsi dalam program sumber. Contoh:
Int sum(int a,int b); // deklarasi fungsi user-defined sum
Int X; // deklarasi variable X
Program
main ( )
Bagian utama ketiga dari program C++ adalah fungsi main ( ) (yang merupakan tubuh utama program), setiap program harus memiliki fungsi main ( ). Eksekusi program dimulai dari fungsi main ( ) dan dalam struktur program yang baik, eksekusi berujung pada fungsi ini.
Contoh :
Main( )
Bagian utama ketiga dari program C++ adalah fungsi main ( ) (yang merupakan tubuh utama program), setiap program harus memiliki fungsi main ( ). Eksekusi program dimulai dari fungsi main ( ) dan dalam struktur program yang baik, eksekusi berujung pada fungsi ini.
Contoh :
Main( )
Pernyataaan;
Fungsi
User-defined
Bagian terahir dari program C ++ berisi user-define yang merupakan kelompok dari perintah yang dibuat untuk menyempurnakan perintah-perintah program. Sewaktu anda mendeklarasikan variable, konstanta atau fungsi (yang menghasilakan nilai balik) dalam program, anda harus memberi nama variable, konstanta, atau fungsi tersebut beserta tipe datanya kepada compiler C++. Tipe mendefinisikan nilai yang dapat disimpan pada variable, atau konstanta, atau nilai yang dapat dihasilkan oleh fungsi dan juga sekumpulan operasi yang dapat dilakukan terhadap data tersebut.
Tipe data dasar pada C++ meliputi :
Bagian terahir dari program C ++ berisi user-define yang merupakan kelompok dari perintah yang dibuat untuk menyempurnakan perintah-perintah program. Sewaktu anda mendeklarasikan variable, konstanta atau fungsi (yang menghasilakan nilai balik) dalam program, anda harus memberi nama variable, konstanta, atau fungsi tersebut beserta tipe datanya kepada compiler C++. Tipe mendefinisikan nilai yang dapat disimpan pada variable, atau konstanta, atau nilai yang dapat dihasilkan oleh fungsi dan juga sekumpulan operasi yang dapat dilakukan terhadap data tersebut.
Tipe data dasar pada C++ meliputi :
- Char
- Int
- Short
- Long
- Float
- Double
- Long
- double.
FITUR DAN FUNGSI BAHASA PEMROGRAMAN:
- Suatu fungsi jelas memiliki tipe. Tipe suatu fungsi menentukan nilai kembalian dari fungsi tersebut. Suatu fungsi dengan tipe int (integer) akan memberikan kembalian/ return berupa nilai bertipe integer dari pemrosesan yang sudah dilakukannya. Berbeda dengan tipe void, dimana tipe fungsi ini tidak memiliki nilai kembalian atau dapat dikatakan fungsi void hanya menjalankan rutin program saja.
- Nama_fungsi merupakan pengenal suatu fungsi. Nama_fungsi akan sangat berguna dan wajib disertakan karena sebagai basis pemanggilan.
- Parameter merupakan variabel penampung input suatu fungsi. Dapat dikatakan bahwa parameter merupakan satu-satunya gerbang input dan pertukaran nilai antara suatu fungsi dengan dunia luar (fungsi main).
- Return merupakan instruksi yang berguna mengembalikan hasil kerja suatu fungsi, untuk dapat digunakan di dunia luar (fungsi main).
Agar kamu semakin paham dengan apa
yang sudah Mimin jelaskan di atas, maka perhatikan contoh berikut ini:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#include
<iostream>
using namespace std;
int hitung_luas
(int panjang, int
lebar){
int luas
= panjang*lebar;
return luas;
}
int main(){
int a,b,hasil;
cout<<"Program
Hitung Luas Persegi Panjang"<<endl;
cout<<"-----------------------------------"<<endl;
cout<<"Masukkan
nilai panjang :"; cin>>a;
cout<<"Masukkan
nilai lebar :"; cin>>b;
hasil =
hitung_luas(a,b);
cout<<"Luas
persegi panjang adalah :"<<hasil<<endl;
return 0;
}
|
Program di atas merupakan program
yang berfungsi menghitung luas persegi panjang, dengan memanfaatkan sebuah
fungsi. Mimin buat fungsi hitung_luas dengan tipe int (integer). Parameter yang
terdapat pada fungsi hutung_luas adalah panjang, dan lebar dengan masing-masing
bertipe data integer. Variabel luas mimin deklarasikan di dalam fungsi dan
memiliki nilai berupa perkalian panjang dan lebar. Nilai luas kemudian diumpan
sebagai nilai akhir pemrosesan dengan menggunakan instruksi return pada baris
ke-enam.
Pada baris ke-17 yaitu di dalam
fungsi main(), Mimin panggil fungsi hitung_luas dan diberikan nilai parameter
berupa variabel a, dan b. Nilai variabel a dan b pada baris sebelumnya
menampung nilai panjang dan lebar yang diinputkan user. Pada baris 17 pula,
hasil umpan balik (return) fungsi hitung_luas, mimin tampung pada variabel
hasil untuk kemudian dicetak pada baris ke-18 untuk melihat hasilnya. Berikut
adalah hasil output program:

1.
Fungsi
Void
Seperti yang sudah Mimin jelaskan di
atas, terdapat fungsi dengan tipe void, Fungsi dengan tipe void tidak akan
mengembalikan nilai apapun seperti fungsi yang sudah Mimin contohkan di atas.
Fungsi void biasanya digunakan untuk menjalankan rutin program tertentu saja.
Agar kamu lebih paham, berikut Mimin contohkan kode programnya:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include
<iostream>
#include
<string>
using namespace std;
int cetak
(string kata){
cout<<kata<<endl;
}
int main(){
string input;
cout<<"Masukkan
kata :";
getline(cin,input);
cetak(input);
return 0;
}
|
Program di atas, merupakan program
yang memanfaatkan fungsi void untuk mencetak data yang kamu masukkan. Kamu bisa
lihat tidak ada instruksi return dalam fungsi cetak tersebut. Berikut hasil
output programnya:

Fungsi Overload
Suatu fungsi dalam program yang kamu
buat bisa memiliki nama yang sama. Terus bagaimana cara manggilnya Min, kalau
namanya aja sama? Apa nanti fungsi utama tidak bingung dalam melakukan
pemanggilan? Oke, gini jadi yang membedakan suatu fungsi adalah parameternya,
sehingga program utama atau main() tidak akan salah panggil dan mendapatkan
nilai yang salah walaupun namanya sama. Nih buat lebih memperjelas, Mimin
contohkan kode programnya:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#include
<iostream>
using namespace std;
void fungsiOverload
(void){
cout<<"Ini
Merupakan fungsi overload"<<endl;
}
int fungsiOverload
(int bil1, int bil2){
int operasi;
operasi = bil1*bil2;
return operasi;
}
int main(){
fungsiOverload();
cout<<"Hasil
:"<<fungsiOverload(3,5)<<endl;
return 0;
}
|
Pada program di atas, Mimin membuat
dua buah fungsi dengan nama yang sama yaitu “fungsiOverload”. Fungsi pertama
berfungsi mencetak kata “Ini Merupakan fungsi overload“, sedangkan
fungsi kedua bertugas melakukan perkalian dua buah bilangan. Kamu bisa lihat
pada baris 14 dan 15 bagaimana kedua fungsi yang memiliki nama beda namun
dipanggil dengan cara yang berbeda yaitu dari parameternya. Berikut adalah
hasil output programnya:

2.
Fungsi
Prototype
Fungsi prototype atau prototype
function sebenarnya merupakan sebuah variasi gaya dalam mendeklarasikan
sebuah fungsi. Nah coba kamu perhatikan semua fungsi yang sudah mimin jabarkan
dan jelaskan panjang kali lebar di atas, hehehe. Semua fungsi tersebut
dideklarasikan sebelum fungsi main(). Nah kenapa min kok harus dideklarasikan
di awal atau sebelum fungsi main()? Suatu sub fungsi dideklarasikan diawal
suatu fungsi main() dengan tujuan agar fungsi main dapat mengenali
fungsi-fungsi yang ada. Bagaimana kalau suatu fungsi berada sesudah fungsi
main()? jelas bahwa error akan terjadi karena fungsi main tidak mengenali suatu
fungsi yang hendak dipanggil dalam fungsi utama.
Untuk menanggulangi hal tersebut,
dalam pemrograman C++ dikenal istilah prototype fungction, dimana kamu
wajib mendelarasikan nama fungsi, jenis fungsi, dan parameternya saja sebelum
fungsi main agar dikenali oleh program utama. Untuk selanjutnya kamu bebas
menyusun isi suatu fungsi mengenai apa saja yang hendak dilakukan dengan fungsi
tersebut serta meletakanya setelah fungsi main().
Berikut contohnya kita gunakan
fungsi yang sudah ada di atas:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#include<iostream>;
using namespace std;
int hitung_luas
(int panjang, int
lebar); //Prototype
function
int main(){
int a,b,hasil;
cout<<"Program
Hitung Luas Persegi Panjang"<<endl;
cout<<"-----------------------------------"<<endl;
cout<<"Masukkan
nilai panjang :"; cin>>a;
cout<<"Masukkan
nilai lebar :"; cin>>b;
hasil =
hitung_luas(a,b);
cout<<"Luas
persegi panjang adalah :"<<hasil<<endl;
return 0;
}
int hitung_luas
(int panjang, int
lebar){
int luas
= panjang*lebar;
return luas;
}
|
3.
Fungsi
Inline
Fungsi inline merupakan
metode yang digunakan untuk mempercepat pemanggilan suatu fungsi. Biasanya
fungsi yang diberikan atribut inline merupakan fungsi yang berada di
dalam loop atau dipanggil secara berulang kali. Dengan metode inline,
suatu fungsi akan aktif dalam memori sehingga mempercepat pemanggilan blok
fungsi untuk diproses. Untuk mengaplikasikan fungsi inline cukup mudah
yaitu dengan menambahkan atribut inline sebelum tipe fungsi. Berikut
adalah sintaksnya:
1
2
3
4
5
6
7
|
inline tipe
nama_fungsi (tipe parameter1, tipe parameter2, ...,tipe parameterN){
//Kode fungsi yang
akan dialankan
return kembalian;
}
|