Pengenalan C++


Pemrograman sudah ada semenjak adanya komputer pertama diciptakan. Tapi pada awalnya programmer bekerja dengan bahasa komputer yang sangat sulit untuk di pahami oleh manusia, bahasa itu adalah bahasa mesin.

Karena sangat sulit untuk bekerja dengan bahasa mesin, maka dari itu dibuatlah bahasa Assembly yang merupakan bahasa rakitan, kumpulan dari singkatan kode-kode.

Bahasa tingkat rendah Assembly pun masih sulit untuk manusia, maka manusia menciptakan bahasa pemrograman tingkat tinggi yang mudah untuk dipahami oleh manusia. Waktu ke waktu semakin banyak pengembang yang berusaha untuk mengembangkan bahasa pemrograman, banyak bahasa tingkat tinggi yang bermunculan dengan fasilitas yang mereka tawarkan, salah satunya adalah C++.

Sejarah Bahasa Pemrograman C

Bahasa C dikembangken di Bell lab pada tahun 1972 ditulis pertama kali oleh Brian W. Kernighan dan Denies M. Ricthie merupakan bahasa turunan atau pengembangan dari bahasa B yang ditulis oleh Ken Thompson pada tahun 1970, yang juga merupakan bahasa yang diturunkan oleh bahasa sebelumnya, yaitu BCL.

Bahasa C pada awalnya dirancang sebagai bahasa pemrograman yang dioperasikan pada sistem operasi UNIX. Bahasa C merupakan bahasa pemrograman yang tergolong di antara bahasa tinggat rendah dan tingkat tinggi yang biasa disebut dengan Bahasa Tingkat Menengah. Bahasa C mempunyai banyak kemampuan yang sering digunakan diantaranya kemampuan untuk membuat perangkat lunak, misalnya dBASE, Word Star dan lain-lain.

Sejarah Bahasa Pemrograman C++


// PemrogramanDasar1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	std::cout << "Hello world!\n";
	system("pause");
	return 0;
}
                    

Bahasa C++ lahir pada tahun 1980, yang dibuat 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 with Class).

Borland International merilis kompiler Borland C++ dan Turbo C++. Kedua kompiler ini sama-sama dapat digunakan untuk mengkompilasi kode C++. Bedanya, Borland C++ selain dapat digunakan dibawah lingkungan DOS, juga dapat digunakan untuk pemrograman Windows. Selain Borland International beberapa perusahaan lain juga merilis kompiler C++, seperti Topspeed C++ dan Zortech C++.

Awal mula Bjarne Stroustrup membuat membuat C++ adalah ketika Bjarne Stroustrup melakukan pekerjaan untuk gelar Ph.D. tesis pada salah satu bahasa pemrograman dan Stroustrup memiliki kesempatan untuk bekerja dengan bahasa tersebut yang disebut Simula,

Simula merupakan bahasa untuk simulasi. The Simula 67 bahasa yang merupakan varian bekerja dengan Stroustrup. bahasa tersebut dianggap sebagai bahasa pertama untuk mendukung paradigma pemrograman berorientasi obyek. Stroustrup menyadari bahwa paradigma ini sangat berguna untuk pengembangan perangkat lunak, dengan kelebihan bahasa Simula tersebut tetapi bahasa Simula memiliki kekurangan yaitu, bahasa Simula terlalu lambat untuk penggunaan praktis.

Tak Lama kemudian, ia memulai untuk mengerjakan bahasa pemrograman berdasarkan ide yang telah ia dapatkan. Stroustrup mengerjakan C++ dengan nama awalnya yaitu C With Class. yang dimaksudkan untuk menjadi superset dari bahasa C, dengan menambahkan pemrograman berorientasi obyek ke dalam bahasa C.

Alasan Kenapa Stroustrup lebih memilih untuk mengembangkan C adalah, karena bahasa pemrograman C merupakan bahasa pemrograman yang sangat popular karena kecepatan, kinerja yang bagus, memungkinkan untuk melakukan pengkodean bahasa tingkat rendah dan lain sebagainya.

Kompiler Pertama C with class disebut Cfront, yang berasal dari kompiler C disebut CPRE. CFront adalah program yang dirancang untuk menerjemahkan C dengan Kelas ke C. hal menarik yang patut untuk diketahui adalah bahwa Cfront sebagian besar ditulis dalam C with Class, membuatnya menjadi kompiler self hosting (Kompiler yang dapat mengkompilasi diri sendiri).

Cfront kemudian ditinggalkan pada tahun 1993 setelah dianggap sulit untuk mengintegrasikan fitur baru ke dalamnya. Meskipun demikian, Cfront membuat dampak besar pada implementasi kompiler masa depan dan pada sistem operasi Unix.

Pada tahun 1985, Stroustrup membuat buku referensi berjudul The C ++ Programming Language diterbitkan. Pada tahun yang sama, C ++ dilaksanakan sebagai produk komersial. Bahasa ini belum secara resmi distandarkan. Bahasa ini diperbarui lagi pada tahun 1989 dan menambahkan fasilitas Protected member, Static member, serta Inheritance.

Pada tahun 1990, buku The Annotated C ++ Reference dirilis. Pada tahun yang sama Borland dan Turbo C ++ kompiler dirilis sebagai produk komersial. Turbo C ++ menambahkan banyak library tambahan yang akan memiliki dampak yang besar terhadap pengembangan C ++. Meskipun rilis stabil terakhir Turbo C ++ pada tahun 2006, tapi kompiler tersebut sampai saat ini masih banyak digunakan.

Pada tahun 1998, panitia standar C ++ menerbitkan Standar Internasional pertama untuk C ++ ISO / IEC 14882: 1998. Pada tahun 2003, panitia mendapati beberapa masalah yang dilaporkan dengan C++ Standar mereka pada tahun 1998, karena itu bahasa diperbaharui yang merupakan revisi masalah sebelumnya dan dijuluki C ++ 03.

Pada tahun 2005, panitia Standarisasi C ++ merilis laporan teknis yang dijuluki TR1, merinci berbagai fitur mereka berencana untuk menambah C ++ standar terbaru. Standar baru itu secara informal dijuluki C ++ 0x seperti yang diharapkan akan dirilis sebelum akhir dekade pertama. Namun, ironisnya, standar baru tidak dirilis sampai pertengahan 2011.


Struktur Program


Silahkan tulis Source Code berikut, kemudian perhatikan perbedaannya!


Contoh 1
					
#include <iostream>

int main()
{
	std::cout << "Welcome to C++";

	return 0;   
}
					

Contoh 2
					
#include <iostream>
using namespace std;

int main()
{
    cout << "Welcome to C++";

    return 0;   
}
					

Mari kita mengenal beberapa sintaks/coding tersebut.

Header

Header adalah tempat dimana kita akan memasukkan library yang ada pada C++ kedalam kode program. Sedangkan main() sebagai blok program utama kita.

Jika anda melihat kode pada baris pertama terdapat kode #include <iostream>.

Tanda '#' disebut preprocessor directive.

Preprocessor directive adalah perintah-perintah yang diberikan kepada compiler untuk melakukan definisi, misalnya untuk memasukkan file library, dan lain sebagainya.

Jika kita lihat program diatas kita akan memasukkan (include) library iostream ke dalam program. iostream adalah header yang dibutuhkan untuk "kegiatan" input dan output.

Jika anda perhatikan kode program diatas, terdapat:


using namespace std;

Sedangkan pada contoh pertama tidak menggunakan baris kode tersebut.

Jadi intinya penggunaannya untuk memberitahukan kepada kompiler bahwa kita akan menggunakan semua fungsi, class atau file yang terdapat pada memori namespace std.

Kita tidak perlu mengetikan std::cout untuk mencetak output namun hanya cukup menggunakan fungsi cout saja, karena telah menggunakan using namespace std;

Selanjuntya kode main() adalah blok program yang berfungsi sebagai badan sebuah alur kondingan atau disebut sebagai program utama yang ditulis antara kode { hingga }.

Berikut adalah contoh program c++ sederhana untuk menghitung keliling lingkaran:


#include <iostream>
using namespace std;

const double pi = 3.14159;
const char newline = '\n';


int main ()
{
 double circle;
 double r = 5.0; //radius
 circle = 2 * pi * r;
 cout << circle;
 cout << newline;
}

PENTING: Penulisan dalam bahasa C++ bersifat case sensitive.

#5 Pendeklarasian Variabel dan Konstanta

Untuk mendeklarasikan variabel yaitu dengan menuliskan tipe data terlebih dahulu kemudian diikuti nama variabel. Dan berikut contohnya:


double circle;
double r = 5.0;

Sedangkan untuk mendeklarasikan variabel bernilai konstanta dengan menggunakan fungsi const diikuti tipe data, nama varibel, dan nilai/value. Contoh:


const double pi = 3.14159;
const char newline = '\n';

Bagi anda yang membutuhkan penjelasan lebih lanjut mengenai variabel dan konstanta silahkan baca: pengertian variabel dan konstanta dalam pemrograman.

Tambahan: anda tidak boleh menggunakan keyword c++ berikut ini sebagai nama identifier variabel maupun konstanta atau anda akan mendapat error.


Keyword dalam C++


Berikut reserved words di C++:

Keyword
asm else new this
auto enum operator throw
bool explicit private true
break export protected try
case extern public typedef
catch false register typeid
char float reinterpret_cast typename
class for return union
const friend short unsigned
const_cast goto signed using
continue if sizeof virtual
default inline static void
delete int static_cast volatile
do long struct wchar_t
double mutable switch while
dynamic_cast namespace template

TIPS: Tenang saja karena anda tidak perlu menghafalnya, tips untuk untuk anda dalam pemberian nama identifier selalu gunakan nama yang mudah anda ingat.


Komentar dalam C++


Komentar adalah catatan atau dokumenasi yang ditulis oleh programmer untuk sebagai pengingat atau penjelasan ketika membaca sebuah baris kode.

Dalam bahasa C++ ada dua tanda yang dapat di gunakan untuk sebuah komentar:

  • Yang pertama ada tanda yang di gunakan untuk komentar satu baris saja, untuk tanda komentar satu baris, menggunakan tanda dua garis miring //.

  • dan yang ke dua tanda yang di gunakan untuk komentar lebih dari satu baris. Sedangkan untuk komentar lebih dari satu bari, menggunakan tannda /*...*/.

Perhatikan contoh berikut:


//ini komentar satu baris

/* ini komentar
   beberapa baris */

Kata-kata dalam sebuah komentar tidak akan dieksekusi oleh compiler.


Penggunaan Input Output C++


Pada bab ini kita akan mempelajari operasi input output (I/O) paling dasar yang umum dibutuhkan pada pemrograman C++. Sintaks: cin untuk input dan cout untuk output.

Secara sederhana Input dapat diartikan sebagai berikut:

Input adalah aktifitas pengguna dengan program komputer yang memungkinkan kita memberikan data kedalam program. Misalnya dari keyboard, mouse, dll.

Sedangkan Output dapat diartikan sebagai berikut:

Output adalah aktifiktas program komputer untuk mengeluarkan data kepada pengguna. Data tersebut dapat berupa text, file, gambar dan lain-lain.

Nah, kali ini kita akan belajar mengenai dasar proses input & output pada C++

Operasi Input dan Output dapat kita lakukan dengan menggunakan fungsi-fungsi yang berada pada Stream dan salah satunya ada pada library iostream.

Stream adalah nama umum untuk menampung aliran data (contoh : file, keyboard, mouse), maupun untuk keluaran (contoh : layar, printer).

Dalam C++ input berarti membaca dari stream & output berarti menulis ke stream.

#1 Output pada C++ (sintaks: cout)

Dalam pemrograman c++ kita akan sering menggunakan sintaks cout untuk menampilkan data ke alat output khususnya data berupa teks.

Untuk menggunakan keyword cout kita membutuhkan Insertion Operator:

yaitu 2 buah tanda lebih kecil << di antara keyword dengan ekspresi.

Berikut contoh programnya:


#include <iostream>
using namespace std;

int main()
{
    string selamat="Welcome to C++"
    cout << selamat;

    return 0;   
}

Pada contoh kode diatas kita mendeklarasikan sebuah variabel bernama 'selamat' dengan tipe data string. Kemudian kita mecetaknya dengan keyword cout.

Anda hanya perlu menulikan variabelnya setelah Insertion Operator.

Namun jika kita ingin langsung menampilakan sebaris kalimat (string), kita dapat menambahkan sepasang tanda petik dua di awal kalimat dan di akhir kalimat.

Berikut contoh programnya:


#include <iostream>
using namespace std;

int main()
{
    cout << "Welcome to C++";

    return 0;   
}

Seperti yang anda lihat kita hanya perlu membungkus teks didalam dua tanda kutip.

#2 Input pada C++ (sintaks: cin)

Jika fungsi cout kita gunakan untuk menampilkan output maka bisa ditebak bahwa fungsi cin akan kita gunakan untuk melakukan perintah input dasar text.

Untuk menggunakan keyword cin kita membutuhkan Extraction Operator dengan 2 buah tanda lebih dari >> yang diletakan di antara keyword cin dan memori.

Untuk itu, kita harus mendeklarasikan variabel terlebih dahulu.

Karena nantinya, data yang diberikan oleh pengguna dalam operasi pemasukan (input) akan disimpan di dalam memori variable yang telah kita deklarasikan.

Silahan perhatikan baris kode berikut:


#include <iostream>
using namespace std;

string nama;

int main()
{
    cout << "Masukan Nama: ";
    cin >> nama;

    cout << "Nama saya adalah " << nama;    
}

Akan saya jelaskan dari awal.

Dari contoh program diatas, kita telah mendeklarasikan variabel nama bertipe string. Sedangkan cin untuk meyimpan nilai masukan dari pengguna ke variabel nama.

Lalu nilai/value dari variabel nama ditampilkan dengan menggunakan fungsi cout.

Menarik Kesimpulan

Baiklah akan saya rangkum kembali untuk kesimpulan, dalam program c++ kita akan mengenal dua fungsi bernama cin untuk input teks dan cout untuk output teks.

Untuk menggunakannya, kita mebutuhkan sebuah tambahan operator:

  • Operator Insertion << (2 buah tanda kurang dari) untuk cout.

  • Operator Extraction >> (2 buah tanda lebih dari) untuk cin.

Khusus untuk cout anda juga bisa langsung mecetak teks string yang dibungkus dengan double quotes tanpa harus menggunakan variabel tambahan.