C++
ek dek Bjarne Stroustrup, nan marupokan perkembangan dari bahaso C dikambangkan di Bell Labs (Dennis Ritchie) pado awal tahun 1970-an, bahaso tu diturunkan dari bahaso sabalumnyo, inyo tu B. Pado awalnyo, bahaso tu dirancang sabagai bahaso pemrograman nan dijalankan pado sistem Unix. Pado parkambangannyo, versi ANSI (American National Standards Institute) pado bahaso pemrograman C manjadi versi dominan, maskipun versi tu sakarang jarang dipakai jo pangembangan sistem jo jaringan maupun untuak sistem embedded. Bjarne Stroustrup pado Bell Labs patamo kali mangembangkan C++ pado awal 1980-an. Untuak mandukuang fitur-fitur pado C++, dibangun efisiensi jo sistem support untuak pemrograman tingkek randah (low level coding).[1] Pado C++ ditambahan konsep-konsep baru sarupo class jo sifeik-sifeiknyo sarupo inheritance jo overloading.[rujuakan?] Salah satu perbedaan nan paliang mandasa jo bahasa C adolah dukungan kapado konsep pemrograman berorientasi objek (object-oriented programming).[2][3]
Standarisasi
[suntiang | suntiang sumber]Year | C++ Standard | Informal name |
---|---|---|
2011 | ISO/IEC 14882:2011[4] | C++11 |
2007 | ISO/IEC TR 19768:2007[5] | C++TR1 |
2003 | ISO/IEC 14882:2003[6] | C++03 |
1998 | ISO/IEC 14882:1998[7] | C++98 |
Pado tahun 1998, C++ Standar Komite (ISO/IEC JTC1/SC22/WG21 Working Group) mangaluaran Standar Internasional ISO/IEC 14882:1998 nan digunoan salamo beberapo tahun. Pada tahun 2003 dirilis versi nan alah dikoreksi, ISO/IEC 14882:2003. Pado tahun 2005, Laporan Teknis nan disabuik "Laporan Teknis Perpustakaan 1" (saring dikana sabagai TR1) dirilis. Revisi tabaru dari standar C++ adolah C+11 (sabalumnya dikana C++0x) alah disetujui dek ISO/IEC pado tanggal 12 Agustus 2011 jo alah ditarbitkan sabagai 14882:11.
Contoh Program C++
[suntiang | suntiang sumber]Contoh program sederhana C++ untuak Hello world jo menggunokan pustaka dasar C++ dapek dicaliak di bawah iko:[rujuakan?]
#include <iostream>
using namespace std;
int main(){
string nama_saya ="Panggih Dafa Najmuddin";
string waras_kelas = "11";
Int tinggi_badan = 175;
char golongan_darah = "0";
count<<"string nama_saya :"<<Panggih_dafa<<endl;
count<<"walas_kelas :"<<11<<endl;
count<<"tinggi badan :"<<175<<endl
count<<"golongan darah :"<<AB<<endl;
{
cout <<"hello world"<<endl;
return 0;
}
Keterangan
[suntiang | suntiang sumber]Baris patamo:
#include <iostream.h>
Sabagai bagian dari proses kompilator, kompilator dari c++ manjalankan program nan dinamoan preprosesor.[rujuakan?] Preprosesor ado kemampuan manambahan jo manghapui kode dari sumber. Pado bagian #include
mambaritahuan preprosesor untuak manyertakan kode dari iostream, berkas iostream barisi deklarasi untuak barbagai fungsi nan dibutuhan dek perangkek luneik, atau class-class nan dibutuhan.[8]
Baris kaduo:
int main ()
Pernyataan iko mendeklarasiaan fungsi utamo, bahwa suatu program C++ dapek barisi banyak fungsi, nan harus dipunyoi sebuah fungsi utamo (main function). Fungsi adolah modul nan barisi kode-kode untuak manyalasaian masalah-masalah tatentu. Kato Void manandoan fungsi main indak batipe.[8] Baris katigo:
{
Kurung kurawa buka manandoan awal program.[8] Baris kaampek:
std::cout << "Hello world\n";
Cout adolah sabuah object dari pustaka perangkek luneik standar C++ nan digunoan untuak mancetak string ka piranti output standar, nan biasonyo adolah layar komputer, kompilator manghubungkan kode dari pustaka perangkek luneik standar tu jo kode nan alah ditulih untuak mandapekan hasil executable. Tanda
\n
adolah format modifier nan digunoan untuak baganti baris setelah manampilkan string, jiko ado cout lain pado program tasabuik, mako string nan manyertainyo akan dituliskan pado baris bawahnyo.[8] Baris kalimo:
# include <stdio.h>
int maksimum (int,int);
void tulis (int);
main()
int nilai 1,nilai 2,nilai maks;
printf (*\n ketikkan dua bilangan bulat:);
scanf("%d%d",& nilai 1,nilai 2);
nilai maks=maksimum (nilai 1,nilai 2);
tulis(nilai maks);
returns 0;
int maksimum(int x1,int x2)
if (x1>x2)
return x1;
else
return x2;
void tulis(int x)
printf("\n hasilnya adalah:%d",x);
Kurung kurawa tutuik manandoan akhir program.[9]
Kato nan dipasan
[suntiang | suntiang sumber]Kalompok patamo
[suntiang | suntiang sumber]C++ mampunyoi 32 buah kato nan dipasan (reserved words). Kato kunci kalompok patamo marupokan turunan dari bahasa C, di antaronyo:[9]
auto | const | double | int | short | struct | unsigned | |
break | continue | else | for | long | signed | switch | void |
case | default | enum | goto | register | sizeof | typedef | volatile |
char | do | extern | if | return | static | union | while |
Kalompok kaduo
[suntiang | suntiang sumber]Kato nan dipasan kalompok kaduo bajumlah 30. Kato-kato iko adolah baru jo hanyo ado di bahasa C++.[10]
asm | dynamic_cast | namespace | reinterpret_cast | try |
bool | explicit | new | static_cast | typeid |
catch | false | operator | template | typename |
class | friend | private | this | using |
const_cast | inline | public | throw | virtual |
delete | mutable | protected | true | wchar_t |
Kato-kato nan dipasan tasabuik di ateh indak buliah dipakai sabagai namo variable, class, enum, macro, jo struct.[10]
# include <stdio.h>
int maksimum (int,int);
void tulis (int);
main()
int nilai 1,nilai 2,nilai maks;
printf (*\n ketikkan dua bilangan bulat:);
scanf("%d%d",& nilai 1,nilai 2);
nilai maks=maksimum (nilai 1,nilai 2);
tulis(nilai maks);
returns 0;
int maksimum(int x1,int x2)
if (x1>x2)
return x1;
else
return x2;
void tulis(int x)
printf("\n hasilnya adalah:%d",x);
Tipe data dasa
[suntiang | suntiang sumber]Untuak manyimpan suatu variabel diparaluan tampek khusus di dalam memori komputer. Gadang jo tipe dari variabel-variabel di dalam standar program C++ dispesifikasian sabagai barikuik.[10]
Nama | Keterangan | Ukuran | Jangkauan |
---|---|---|---|
char | Abjad/karakter atau untuk bilangan bulat kecil | 1 byte | signed: -128 to 127
unsigned: 0 to 255 |
short int (short) | Bilangan bulat dengan jangkauan pendek | 2 byte | signed: -32768 to 32767
unsigned: 0 to 65535 |
int | Bilangan bulat | 4 byte | signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295 |
long int (long) | Integer dengan jangkauan panjang | 4 byte | signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295 |
bool | Boolean, dapat bernilai benar atau salah (true or false) | i byte | true or false |
float | Angka dengan titik mengambang (bilangan cacah) | 4 byte | 3.4e +/- 38 (7 digit) |
double | Bilangan cacah dengan ketelitian ganda | 8 byte | 1.7e +/- 308 (15 digits) |
long double | Bilangan cacah dengan ketelitian ganda panjang | 8 byte | 1.7e +/- 308 (15 digits) |
wchar_t | Karakter lebar, biasa dipakai untuk Unicode karakter | 2 byte | 1 karakter lebar |
Kompilator C++
[suntiang | suntiang sumber]- Acorn C/C++
- Borland C++
- C++/CX
- C++Builder
- Cfront
- Clang
- CodeWarrior
- Comeau C/C++
- ConceptGCC
- Digital Mars
- GNU Compiler Collection
- HP aC++
- IBM XL C++
- Intel C++ Compiler
- MinGW
- Norcroft C compiler
- Open64
- Oracle Solaris Studio
- PathScale
- The Portland Group
- ROSE (compiler framework)
- Shed Skin
- Softune
- TenDRA Compiler
- THINK C
- Turbo C++
- Visual C++
- IBM VisualAge
- Watcom C/C++ compiler
- Zortech
Kaluargo bahaso pemrograman C++
[suntiang | suntiang sumber]- Algorithmic skeleton
- C++/CLI
- C++/CX
- Charm++
- Embedded C++
- Felix (programming language)
- Intel Array Building Blocks
- Intel Parallel Studio
- Managed Extensions for C++
- R++
- Sieve C++ Parallel Programming System
- Threading Building Blocks
- ΜC++
Rujuakan
[suntiang | suntiang sumber]- ↑ Hanif al fatta (2006). Dasar Pemrograman C++ disertai dengan Pengenalan Pemrograman Berorientasi Objek. ISBN 979-763-582-1.
- ↑ Bruce Eckel (2000). Thinking in C++. Jilid 1 dari Thinking in C++ Introduction to Standard C+, Bruce Eckel. ISBN 0139798099, 9780139798092.
- ↑ Bjarne Stroustrup (2000). The C++ programming language, Prentice Hall, 2000. ISBN 0201889544, 9780201889543.
- ↑ "ISO/IEC 14882:2011".
- ↑ "ISO/IEC TR 19768:2007".
- ↑ "ISO/IEC 14882:2003".
- ↑ "ISO/IEC 14882:1998".
- ↑ a b c d Nicolai M. Josuttis (1991). C++ primer Jilid 54848 dari Programming languages, penerbit Addison-Wesley, 1991. ISBN 0201548488, 9780201548488.
- ↑ a b Nicolai M. Josuttis (2002). Object-oriented programming in C++, Penerbit J. Wiley, 2002, Tebal 610 halaman. ISBN 0470843993, 9780470843994.
- ↑ a b c Gregory Satir, Doug Brown (2002). C++: the core language, Penerbit, O'Reilly Media, Inc., 1995, Tebal 207 halaman.. ISBN 156592116X, 9781565921160.