Konten dihapus Konten ditambahkan
InternetArchiveBot (bicara | kontrib)
Add 1 book for Wikipedia:Pemastian (20240409)) #IABot (v2.0.9.5) (GreenC bot
 
(45 revisi perantara oleh 16 pengguna tidak ditampilkan)
Baris 1:
{{Infobox programming language
'''C++''' adalah [[bahasa pemrograman]] [[komputer]] yang dibuat oleh Bjarne Stroustrup, yang merupakan perkembangan dari bahasa C dikembangkan di [[Bell Labs]] ([[Dennis Ritchie]]). Pada awal tahun 1970-an, bahasa itu merupakan peningkatan dari bahasa sebelumnya, yaitu B.
| name = C++
| logo = File:ISO C++ Logo.svg
| logo caption = Logo didukung oleh Standar C++
| logo size = 120px
| paradigms = [[Bahasa pemrograman multiparadigma|Multi-paradigma]]: [[pemrograman prosedural|prosedural]], [[pemrograman fungsional|fungsional]], [[pemrograman berorientasi objek|orientasi objek]], [[pemrograman generik|generik]], [[Pemrograman modular|modular]]
| family = [[C (bahasa pemrograman)|C]]
| designer = [[Bjarne Stroustrup]]
| developer = [[ISO/IEC JTC 1/SC 22|ISO/IEC JTC 1 (Joint Technical Committee 1) / SC 22 (Subcommittee 22)]] / WG 21 (Working Group 21)
| released = {{Start date and age|df=yes|1985}}
| latest release version = [[C++20]] {{Small|(ISO/IEC 14882:2020)}}
| latest release date = {{Start date and age|2020|12|15|df=yes}}
| latest preview version = [[C++23]]
| latest preview date = {{Start date and age|2022|3|17|df=yes}}
| typing = [[Tipe statis|Statis]], [[Sistem tipe nominal|nominal]], [[Interfrensi jenis|sebagian interfrensi]]
| scope =
| platform =
| operating system = [[lintas platform]]
| file ext = .C, .cc, .cpp, .cxx, {{nowrap|.c++}}, .h, .H, .hh, .hpp, .hxx, {{nowrap|.h++}}
| file format =
| implementations = {{nowraplinks| [[GNU Compiler Collection|GCC]], [[Clang|LLVM Clang]], [[Microsoft Visual C++]], [[C++Builder|Embarcadero C++Builder]], [[Intel C++ Compiler]], [[IBM XL C++]], [[Edison Design Group|EDG]]}}
| dialects =
| wikibooks = C++ Programming
| influenced by = [[Ada (bahasa pemrograman)|Ada]], [[ALGOL 68]],<ref name="history-cpp-paper">{{cite encyclopedia |last=Stroustrup |first=Bjarne |date=1996 |pages=699–769 |title=A history of C++: 1979-1991 |work=History of programming languages---II |publisher=[[Association for Computing Machinery|ACM]] |doi=10.1145/234286.1057836}}</ref> [[BCPL]],<ref name="cppcon21_bj">{{cite web |url=https://www.youtube.com/watch?v=15QF2q66NhU |title=C++20: Reaching for the Aims of C++ - Bjarne Stroustrup - CppCon 2021 |first=Bjarne |last=Stroustrup |publisher=CppCon |date=December 16, 2021}}</ref> [[C (bahasa pemrograman)|C]], [[CLU (bahasa pemrograman)|CLU]],<ref name="history-cpp-paper" /> [[ML (bahasa pemrograman)|ML]], [[Mesa (bahasa pemrograman)|Mesa]],<ref name="history-cpp-paper" /> [[Modula-2]],<ref name="history-cpp-paper" /> [[Simula]], [[Smalltalk]]<ref name="history-cpp-paper" />
| influenced = [[Ada (bahasa pemrograman)|Ada 95]]<!-- 1995 -->, [[C Sharp (bahasa pemrograman)|C#]]<!-- 2001 -->,<ref name="influenceSharp">{{cite journal |last=Naugler |first=David |date=May 2007 |title=C# 2.0 for C++ and Java programmer: conference workshop |journal=Journal of Computing Sciences in Colleges |volume=22 |issue=5 |quote=Although C# has been strongly influenced by Java it has also been strongly influenced by C++ and is best viewed as a descendant of both C++ and Java.}}</ref> [[C99]]<!-- 1999 -->, [[Carbon (bahasa pemrograman)|Carbon]], [[Chapel (bahasa pemrograman)|Chapel]],<ref name="chplspec">{{cite web|title=Chapel spec (Acknowledgements)|url=https://chapel-lang.org/spec/spec-0.98.pdf|date=1 October 2015|access-date=14 January 2016|publisher=Cray Inc|archive-date=24 June 2018|archive-url=https://web.archive.org/web/20180624150422/https://chapel-lang.org/spec/spec-0.98.pdf|url-status=live}}</ref> [[Clojure]],<ref>{{cite web |url=http://www.codequarterly.com/2011/rich-hickey/ |archive-url=https://web.archive.org/web/20170111184835/http://www.codequarterly.com/2011/rich-hickey/ |url-status=dead |archive-date=2017-01-11 |title=Rich Hickey Q&A by Michael Fogus |access-date=2017-01-11}}</ref> [[D (bahasa pemrograman)|D]]<!-- 1999 -->, [[Java (bahasa pemrograman)|Java]]<!-- 1995 -->,<ref>{{cite web |url=https://books.google.com/books?id=0rUtBAAAQBAJ&pg=PA133 |title=Cracking The Java Programming Interview :: 2000+ Java Interview Que/Ans |author=Harry. H. Chaudhary |access-date=29 May 2016 |date=28 July 2014 |archive-date=27 May 2021 |archive-url=https://web.archive.org/web/20210527025512/https://books.google.com/books?id=0rUtBAAAQBAJ&pg=PA133 |url-status=live }}</ref> [[JS++]],<ref>{{cite web|url=https://www.onux.com/jspp/blog/scaling-jspp-abstraction-performance-and-readability/|title=Scaling JS++: Abstraction, Performance, and Readability|author=Roger Poon|date=1 May 2017|access-date=21 April 2020|archive-date=11 May 2020|archive-url=https://web.archive.org/web/20200511095442/https://www.onux.com/jspp/blog/scaling-jspp-abstraction-performance-and-readability/|url-status=live}}</ref> [[Lua (bahasa pemrograman)|Lua]]<!-- 1993 -->, [[Nim (bahasa pemrograman)|Nim]],<ref>{{cite web|url=https://nim-lang.org/faq.html|title=FAQ Nim Programming Language|access-date=2020-04-21|archive-date=11 July 2017|archive-url=https://web.archive.org/web/20170711004631/https://nim-lang.org/faq.html|url-status=live}}</ref> [[Objective-C++]], [[Perl]]<!-- 1987 -->, [[PHP]]<!-- 1995 -->, [[Python (bahasa pemrograman)|Python]],<ref>{{Cite web|url=https://docs.python.org/tutorial/classes.html|title=9. Classes — Python 3.6.4 documentation|website=docs.python.org|access-date=2018-01-09|archive-date=23 October 2012|archive-url=https://web.archive.org/web/20121023030209/http://docs.python.org/tutorial/classes.html|url-status=live}}</ref> [[Rust (bahasa pemrograman)|Rust]], [[Seed7]]
}}
'''C++''' (dibaca: '''C plus-plus''') adalah [[bahasa pemrograman]] [[komputer]] yang dibuat oleh [[Bjarne Stroustrup]], yang merupakan perkembangan dari bahasa C dikembangkan di [[Bell Labs]] ([[Dennis Ritchie]]). Pada awal tahun 1970-an, bahasa itu merupakan peningkatan dari bahasa sebelumnya, yaitu [[B (bahasa pemrograman)|B]].
 
Pada awalnya, bahasa tersebut dirancang sebagai bahasa pemrograman yang dijalankan pada sistem [[Unix]]. Pada perkembangannya, versi ANSI (American National Standards Institute) pada [[bahasa pemrograman C]] menjadi versi dominan, meskipun versi tersebut sekarang jarang dipakai dalam pengembangan sistem dan jaringan maupun untuk sistem ''embedded''.
 
Bjarne Stroustrup pada Bell Labs pertama kali mengembangkan C++ pada awal [[1980]]-an. Untuk mendukung fitur-fitur pada C++, dibangun efisiensi dan sistem support untuk pemrograman tingkat rendah (''low level coding'').<ref>{{cite book
Baris 7 ⟶ 33:
|title = Dasar Pemrograman C++ disertai dengan Pengenalan Pemrograman Berorientasi Objek
|year = 2006
|isbn = 979-763-582-1}}</ref> Pada C++ ditambahkan konsep-konsep baru seperti class dengan sifat-sifatnya seperti inheritance dan overloading.<ref>{{factCite book|last=Al Fatta|first=Hanif|date=2006|url=https://www.google.co.id/books/edition/Dasar_Pemrograman_C++_Disertai_dengan_Pe/H20EMvS2EmQC?hl=id&gbpv=1&dq=Pada+C%2B%2B+ditambahkan+konsep-konsep+baru+seperti+class+dengan+sifat-sifatnya+seperti+inheritance+dan+overloading&pg=PA1&printsec=frontcover|title=Dasar Pemograman C++ Disertai Dengan Pengenalan Pemograman Berorientasi Objek|location=Yogyakarta|publisher=CV. Andi Offset|isbn=979-763-582-1|editor-last=Triyuliana|editor-first=Agnes Heni|pages=1|url-status=live}}</ref> Salah satu perbedaan yang paling mendasar dengan bahasa C adalah dukungan terhadap konsep [[pemrograman berorientasi objek]] (''object-oriented programming'').<ref>{{cite book
|last = Bruce Eckel
|title = Thinking in C++. Jilid 1 dari Thinking in C++ Introduction to Standard C+, Bruce Eckel
Baris 17 ⟶ 43:
|isbn = 0201889544, 9780201889543}}</ref>
 
== StandardisasiSejarah ==
[[Berkas:BjarneStroustrup.jpg|jmpl|Bjarne Stroustrup, pembuat dari C++, di kantor AT&T-nya di New Jersey c. 2000]]
{| class="wikitable"
Pada 1979, [[Bjarne Stroustrup]], seorang [[ilmuan komputer]] Denmark, memulai pekerjaan pada "{{visible anchor|C dengan [[Kelas (ilmu komputer)|Kelas]]}}", pendahulunya C++.<ref name="invention32">{{cite web|last=Stroustrup|first=Bjarne|date=7 March 2010|title=Bjarne Stroustrup's FAQ: When was C++ invented?|url=http://www.stroustrup.com/bs_faq.html#invention|website=stroustrup.com|archive-url=https://web.archive.org/web/20160206214150/http://www.stroustrup.com/bs_faq.html#invention|archive-date=6 February 2016|access-date=16 September 2010|url-status=live}}</ref> Motivasi untuk membuat bahasa pemrograman baru originated dari pengalaman Stroustrup dalam pemrograman untuk tesis PhD-nya. Stroustrup menemukan bahwa [[Simula]] mempunyai fitur yang sangat membantu untuk pengembangan perangkat lunak besar, tapi bahasanya terlalu lambat untuk penggunaan praktis, sementara [[BCPL]] cepat tapi levelnya terlalu rendah agar cocok untuk pengembangan perangkat lunak besar. Saat Stroustrup mulai bekerja pada [[Bell Laboratories|AT&T Bell Labs]], dia mempunyai masalah menganalisi [[Kernel (ilmu komputer)|kernel]] [[Unix|UNIX]] sehubungan dengan [[komputasi terdistribusi]]. Mengingat pengalaman PhD-nya, Stroustrup bertindak untuk meningkatkan bahasa [[C (bahasa pemrograman)|C]] dengan fitur seperti [[Simula]].<ref name="evolving">{{cite web|last=Stroustrup|first=Bjarne|title=Evolving a language in and for the real world: C++ 1991-2006|url=http://stroustrup.com/hopl-almost-final.pdf|archive-url=https://web.archive.org/web/20071120015600/http://www.research.att.com/~bs/hopl-almost-final.pdf|archive-date=20 November 2007|access-date=14 August 2013|url-status=live}}</ref>
 
=== Etimologi ===
Menurut Stroustrup, "namanya menandakan sifat evolusioner dari perubahan dari C".<ref name="name">{{cite web|title=Bjarne Stroustrup's FAQ&nbsp;– Where did the name "C++" come from?|url=http://www.stroustrup.com/bs_faq.html#name|archive-url=https://web.archive.org/web/20160206214150/http://www.stroustrup.com/bs_faq.html#name|archive-date=6 February 2016|access-date=16 January 2008|url-status=live}}</ref> Nama ini dikreditkan ke Rick Mascitti (pertenngahan-1983)<ref name="hopl2" /> dan digunakan pertama kali pada Desember 1983. Ketika Mascitti ditanyai secara informal pada tahun 1992 tentang penamaan, dia menunjukkan bahwa itu diberikan dalam semangat [[Tongue-in-cheek]]. Nama itu berasal dari [[Operator (pemrograman komputer)|operator]] [[C (bahasa pemrograman)|C]] <syntaxhighlight lang="C++" inline="">++</syntaxhighlight> (yang [[Operator penambahan dan pengurangan|menambah]] [[Nilai (ilmu komputer)|nilai]] dari sebuah [[Variabel (matematika)|variabel]]) dan [[konvensi penamaan]] umum menggunakan "+" untuk mengindikasikan sebuah program komputer yang disempurnakan.
 
Selama pengembangan periode C++, bahasa ini disebut sebagai "new C" dan "C dengan kelas"<ref name="hopl22" /><ref>{{cite web|title=C For C++ Programmers|url=https://www.ccs.neu.edu/course/com3620/parent/C-for-Java-C++/c-for-c++-alt.html|publisher=[[Northeastern University]]|archive-url=https://web.archive.org/web/20101117003419/http://www.ccs.neu.edu/course/com3620/parent/C-for-Java-C++/c-for-c++-alt.html|archive-date=17 November 2010|access-date=7 September 2015|url-status=dead|df=dmy-all}}</ref> sebelum mendapat nama akhir.
 
=== Standardisasi ===
{| class="wikitable floatright" style="margin-left: 1.5em;"
|+Standar C++
|-
!scope="col"| Tahun
! Year !! C++ Standard !! Informal name
!scope="col"| Standar C++<ref name="cppreference">{{cite web |url=http://en.cppreference.com/w/cpp/language/history |title=History of C++ |website=en.cppreference.com |access-date=March 16, 2022 |archive-date=Feb 2, 2022 |archive-url=https://web.archive.org/web/20220202052857/http://en.cppreference.com/w/cpp/language/history |url-status=live }}</ref>
!scope="col"| Nama informal
|-
!scope="row"| 1998
! 2011
| | ISO/IEC 14882:20111998<ref name="isocpp1998">{{cite web|title=ISO/IEC 14882:20111998|publisher=International Organization for Standardization|url=https://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?ics1=35&ics2=60&ics3=&csnumber=25845|access-date=23 November 2018|archive-date=15 January 2017|archive-url=https://web.archive.org/web/20170115080045/http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?ics1=35&ics2=60&ics3=&csnumber=5037225845|url-status=live}}</ref> || [[C++11]]98
|-
!scope="row"| 2003
! 2007
| | ISO/IEC TR 1976814882:20072003<ref name="isocpp2003">{{cite web|title=ISO/IEC TR 1976814882:20072003|publisher=International Organization for Standardization|url=httphttps://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?ics1=35&ics2=60&ics3=&csnumber=4328938110|access-date=23 November 2018|archive-date=13 August 2021|archive-url=https://web.archive.org/web/20210813193332/https://www.iso.org/standard/38110.html|url-status=live}}</ref> || [[C++ Technical Report 1|C++TR103]]
|-
!scope="row"| 2011
! 2003
| | ISO/IEC 14882:20032011<ref name="isocpp2011">{{cite web|title=ISO/IEC 14882:20032011|publisher=International Organization for Standardization|url=https://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?ics1=35&ics2=60&ics3=&csnumber=50372|access-date=23 November 2018|archive-date=27 May 2016|archive-url=https://web.archive.org/web/20160527084921/http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?ics1=35&ics2=60&ics3=&csnumber=3811050372|url-status=live}}</ref> || [[C++11]], C++030x
|-
!scope="row"| 2014
! 1998
| | ISO/IEC 14882:19982014<ref name="isocpp2014">{{cite web|title=ISO/IEC 14882:19982014|publisher=International Organization for Standardization|url=httphttps://www.iso.org/iso/iso_cataloguehome/store/catalogue_ics/catalogue_detail_ics.htm?ics1csnumber=64029&ICS1=35&ics2ICS2=60|access-date=23 November 2018|archive-date=29 April 2016|archive-url=https://web.archive.org/web/20160429201210/http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=64029&ics3ICS1=35&csnumberICS2=60|url-status=50372live}}</ref> || [[C++14]], C++981y
|-
!scope="row"| 2017
| | ISO/IEC 14882:2017<ref name="isocpp2017">{{cite web|title=ISO/IEC 14882:2017|publisher=International Organization for Standardization|url=https://www.iso.org/standard/68564.html|access-date=2 December 2017|archive-date=17 May 2013|archive-url=https://www.webcitation.org/6GgR6NHSY?url=http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=50372|url-status=live}}</ref> || [[C++17]], C++1z
|-
!scope="row"| 2020
| | ISO/IEC 14882:2020<ref name="isocpp2020">{{cite web|title=ISO/IEC 14882:2020|publisher=International Organization for Standardization|url=https://www.iso.org/standard/79358.html|access-date=16 December 2020|archive-date=16 December 2020|archive-url=https://web.archive.org/web/20201216154357/https://www.iso.org/standard/79358.html|url-status=live}}</ref> || [[C++20]], C++2a
|}
 
Pada tahun 1998, C++ Standar Komite (ISO/IEC JTC1/SC22/WG21 Working Group) mengeluarkan Standar Internasional ISO/IEC 14882:1998 yang digunakan selama beberapa tahun. Pada tahun 2003 dirilis versi yang telah dikoreksi, ISO/IEC 14882:2003.
Pada tahun 2005, Laporan Teknis yang disebut "Laporan Teknis Perpustakaan 1" (sering dikenal sebagai TR1) dirilis. Revisi terbaru dari standar C++ adalah C+11 (sebelumnya dikenal C++0x) telah disetujui oleh ISO/IEC pada tanggal 12 Agustus 2011 dan telah diterbitkan sebagai 14882:11.
 
Revisi terbaru dari standar C++ adalah C+11 (sebelumnya dikenal C++0x) telah disetujui oleh ISO/IEC pada tanggal 12 Agustus 2011 dan telah diterbitkan sebagai 14882:11.
Sebagai bagian dari proses standarisasi, ISO juga menerbitkan laporan dan spesifikasi teknis:
 
* ISO/IEC TR 18015:2006<ref>{{cite web|title=ISO/IEC TR 18015:2006|url=https://www.iso.org/standard/43351.html|publisher=International Organization for Standardization|archive-url=https://web.archive.org/web/20190115203236/https://www.iso.org/standard/43351.html|archive-date=15 January 2019|access-date=15 February 2019|url-status=live}}</ref> dalam penggunaan dari C++ pada sistem tertanam dan implikasi performa bahasa C++ dan fitur perpustakaan.
* ISO/IEC TS 22277:2017<ref>{{cite web|title=ISO/IEC TS 22277:2017|url=https://www.iso.org/standard/73008.html|publisher=International Organization for Standardization|archive-url=https://web.archive.org/web/20190115202004/https://www.iso.org/standard/73008.html|archive-date=15 January 2019|access-date=15 February 2019|url-status=live}}</ref> pada coroutine, terintegrasi ke dalam [[C++20]]
* ISO/IEC TS 19216:2018<ref>{{cite web|title=ISO/IEC TS 19216:2018|url=https://www.iso.org/standard/64030.html|publisher=International Organization for Standardization|archive-url=https://web.archive.org/web/20190115201923/https://www.iso.org/standard/64030.html|archive-date=15 January 2019|access-date=15 February 2019|url-status=live}}</ref> pada pustaka jaringan
* ISO/IEC TS 21544:2018<ref>{{cite web|title=ISO/IEC TS 21544:2018|url=https://www.iso.org/standard/71051.html|publisher=International Organization for Standardization|archive-url=https://web.archive.org/web/20190115201858/https://www.iso.org/standard/71051.html|archive-date=15 January 2019|access-date=15 February 2019|url-status=live}}</ref> pada modul, terintegrasi ke dalam [[C++20]]
* ISO/IEC TS 19570:2018<ref>{{cite web|title=ISO/IEC TS 19570:2018|url=https://www.iso.org/standard/70588.html|publisher=International Organization for Standardization|archive-url=https://web.archive.org/web/20190115201519/https://www.iso.org/standard/70588.html|archive-date=15 January 2019|access-date=15 February 2019|url-status=live}}</ref> pada satu set ekstensi pustaka baru untuk paralelisme
* ISO/IEC TS 23619:2021<ref>{{cite web|title=ISO/IEC TS 23619:2021|url=https://www.iso.org/standard/76425.html|publisher=International Organization for Standardization|archive-url=https://web.archive.org/web/20181215153205/https://www.iso.org/standard/76425.html|archive-date=15 December 2018|access-date=11 October 2021|url-status=live}}</ref> pada ekstensi baru untuk refleksi
 
Lebih banyak spesifikasi teknis sedang dalam pengembangan dan menunggu persetujuan, termasuk set ekstensi konkurensi baru.<ref>See a list at {{cite web|title=Experimental C++ Features|url=https://en.cppreference.com/w/cpp/experimental|website=cppreference.com|archive-url=https://web.archive.org/web/20181123140131/https://en.cppreference.com/w/cpp/experimental|archive-date=23 November 2018|access-date=15 February 2019}}</ref>
 
== Contoh Program C++ ==
Baris 67 ⟶ 121:
int main()
{
std::cout << "MasHello, Alam Gantengworld!\n";
}
</syntaxhighlight><!--
Baris 87 ⟶ 141:
*************************************************************** -->
 
=== Keterangan ===
 
Baris pertama: <syntaxhighlight lang="cpp">#include <iostream.h></syntaxhighlight>
Sebagai bagian dari proses kompilator, [[kompilator]] dari c++ menjalankan program yang dinamakan preprosesor.{{fact}} Preprosesor memiliki kemampuan menambahkan dan menghapus kode dari sumber. Pada bagian <code>#include</code> memberitahuakanmemberitahukan preprosesor untuk menyertakan kode dari iostream, berkas iostream berisi deklarasi untuk berbagai fungsi yang dibutuhkan oleh perangkat lunak, atau ''class-class'' yang dibutuhkan.<ref name="Nicolai"/>
 
Baris kedua: <syntaxhighlight lang="cpp">int main ()</syntaxhighlight>
Pernyataan ini mendeklarasikan fungsi utama, bahwa suatu program C++ dapat berisi banyak fungsi, yang harus selalu memiliki sebuah fungsi utama (main function). Fungsi adalah modul yang berisi kode-kode untuk menyelesaikan masalah-masalah tertentu. Kata Void menandakan fungsi main tidak bertipe.<ref name="Nicolai"/>
 
Baris 98 ⟶ 153:
 
Baris keempat: <syntaxhighlight lang="cpp">std::cout << "Hello world\n";</syntaxhighlight>
Cout adalah sebuah object dari [[pustaka perangkat lunak]] standar C++ yang digunakan untuk mencetak string ke peranti output standar, yang biasanya adalah layar komputer, kompilator menghubungkan kode dari pustaka perangkat lunak standar itu dengan kode yang telah ditulis untuk mendapatkan hasil executable. Tanda <syntaxhighlight lang="cpp"code>\n</syntaxhighlightcode> adalah format modifier yang digunakan untuk berganti baris setelah menampilkan string, jika ada cout lain pada program tersebut, maka string yang menyertainya akan dituliskan pada baris bawahnya.<ref name="Nicolai"/>
 
Baris kelima: <syntaxhighlight lang="cpp">}</syntaxhighlight>
Baris 237 ⟶ 292:
| char
| Abjad/karakter atau untuk bilangan bulat kecil
| 1 bytebita
| signed: -128 to 127
unsigned: 0 to 255
Baris 243 ⟶ 298:
| short int (short)
| Bilangan bulat dengan jangkauan pendek
| 2 bytebita
| signed: -32768 to 32767
unsigned: 0 to 65535
Baris 249 ⟶ 304:
| int
| Bilangan bulat
| 4 bytebita
| signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
Baris 255 ⟶ 310:
| long int (long)
| Integer dengan jangkauan panjang
| 4 bytebita
| signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
Baris 261 ⟶ 316:
| bool
| Boolean, dapat bernilai benar atau salah (true or false)
| i bytebita
| true or false
|-
| float
| Angka dengan titik mengambang (bilangan cacah)
| 4 bytebita
| 3.4e +/- 38 (7 digit)
|-
| double
| Bilangan cacah dengan ketelitian ganda
| 8 bytebita
| 1.7e +/- 308 (15 digits)
|-
| long double
| Bilangan cacah dengan ketelitian ganda panjang
| 8 bytebita
| 1.7e +/- 308 (15 digits)
|-
| wchar_t
| Karakter lebar, biasa dipakai untuk Unicode karakter
| 2 bytebita
| 1 karakter lebar
|}
Baris 336 ⟶ 391:
* Threading Building Blocks
* ΜC++
 
== Lihat pula ==
 
* [[Dart (bahasa pemrograman)]]
* [[C Sharp (bahasa pemrograman)|C#]]
* [[Carbon (bahasa pemrograman)]]
* [[Rust (bahasa pemrograman)|Rust]]
 
== Referensi ==
{{reflist}}
 
== Bacaan lanjutan ==
{{Refbegin|30em}}
* {{Cite book|last1=Abrahams|first1=David|last2=Gurtovoy|first2=Aleksey|year=2005|title=C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond|url=https://archive.org/details/ctemplatemetapro0000abra|publisher=Addison-Wesley|isbn=0-321-22725-5|author-link=David Abrahams (computer programmer)}}
* {{Cite book|last=Alexandrescu|first=Andrei|year=2001|title=Modern C++ Design: Generic Programming and Design Patterns Applied|url=https://archive.org/details/moderncdesigngen0000alex|publisher=Addison-Wesley|isbn=0-201-70431-5|author-link=Andrei Alexandrescu}}
* {{Cite book|last1=Alexandrescu|first1=Andrei|last2=Sutter|first2=Herb|year=2004|title=C++ Design and Coding Standards: Rules and Guidelines for Writing Programs|url=https://archive.org/details/ccodingstandards0000sutt|publisher=Addison-Wesley|isbn=0-321-11358-6|author-link=Andrei Alexandrescu|author-link2=Herb Sutter}}
* {{Cite book|last=Becker|first=Pete|year=2006|title=The C++ Standard Library Extensions : A Tutorial and Reference|url=https://archive.org/details/cstandardlibrary0000beck|publisher=Addison-Wesley|isbn=0-321-41299-0|author-link=Pete Becker}}
* {{Cite book|last=Brokken|first=Frank|year=2010|url=http://www.icce.rug.nl/documents/cplusplus/|title=C++ Annotations|publisher=University of Groningen|isbn=978-90-367-0470-0|access-date=28 April 2010|archive-url=https://web.archive.org/web/20100428014354/http://www.icce.rug.nl/documents/cplusplus/|archive-date=28 April 2010|url-status=live}}
* {{Cite book|last=Coplien|first=James O.|date=1994|url=https://archive.org/details/advancedcbsprogr00copl|title=Advanced C++: Programming Styles and Idioms|isbn=0-201-54855-0|author-link=James O. Coplien|orig-year=reprinted with corrections, original year of publication 1992}}
* {{Cite book|last=Dewhurst|first=Stephen C.|year=2005|title=C++ Common Knowledge: Essential Intermediate Programming|url=https://archive.org/details/ccommonknowledge0000dewh|publisher=Addison-Wesley|isbn=0-321-32192-8}}
* {{Cite book|author=Information Technology Industry Council|date=15 October 2003|title=Programming languages&nbsp;– C++|location=Geneva|publisher=ISO/IEC|edition=Second|id=14882:2003(E)|author-link=Information and Communications Technology Council}}
* {{Cite book|last=Josuttis|first=Nicolai M.|year=2012|title=The C++ Standard Library, A Tutorial and Reference|publisher=Addison-Wesley|isbn=978-0-321-62321-8|edition=Second}}
* {{Cite book|last1=Koenig|first1=Andrew|last2=Moo|first2=Barbara E.|year=2000|url=https://archive.org/details/acceleratedcprac2000koen|title=Accelerated C++ – Practical Programming by Example|publisher=Addison-Wesley|isbn=0-201-70353-X|author-link=Andrew Koenig (programmer)}}
* {{Cite book|last1=Lippman|first1=Stanley B.|last2=Lajoie|first2=Josée|last3=Moo|first3=Barbara E.|year=2011|url=https://archive.org/details/cprimer0000lipp_5thed|title=C++ Primer|publisher=Addison-Wesley|isbn=978-0-321-71411-4|edition=Fifth|author-link=Stanley B. Lippman|url-access=registration}}
* {{Cite book|last=Lippman|first=Stanley B.|year=1996|title=Inside the C++ Object Model|url=https://archive.org/details/insidecobjectmod0000lipp|publisher=Addison-Wesley|isbn=0-201-83454-5}}
* {{Cite book|last=Meyers|first=Scott|year=2005|url=https://archive.org/details/effectivec55spec00meye|title=Effective C++|publisher=Addison-Wesley|isbn=0-321-33487-6|edition=Third|author-link=Scott Meyers}}
* {{Cite book|last=Stroustrup|first=Bjarne|year=2013|title=[[The C++ Programming Language]]|publisher=Addison-Wesley|isbn=978-0-321-56384-2|edition=Fourth|author-link=Bjarne Stroustrup}}
* {{Cite book|last=Stroustrup|first=Bjarne|year=1994|title=[[The Design and Evolution of C++]]|publisher=Addison-Wesley|isbn=0-201-54330-3|author-link=Bjarne Stroustrup}}
* {{Cite book|last=Stroustrup|first=Bjarne|year=2014|title=Programming: Principles and Practice Using C++|url=https://archive.org/details/programmingprinc0000stro_b7o6|publisher=Addison-Wesley|isbn=978-0-321-99278-9|edition=Second|author-link=Bjarne Stroustrup}}
* {{Cite book|last=Sutter|first=Herb|year=2001|title=More Exceptional C++: 40 New Engineering Puzzles, Programming Problems, and Solutions|publisher=Addison-Wesley|isbn=0-201-70434-X|author-link=Herb Sutter}}
* {{Cite book|last=Sutter|first=Herb|year=2004|title=Exceptional C++ Style|publisher=Addison-Wesley|isbn=0-201-76042-8|author-link=Herb Sutter}}
* {{Cite book|last1=Vandevoorde|first1=David|last2=Josuttis|first2=Nicolai M.|year=2003|title=C++ Templates: The complete Guide|url=https://archive.org/details/ctemplatescomple0000vand|publisher=Addison-Wesley|isbn=0-201-73484-2}}
{{refend}}
 
== Pranala luar ==
* [http://public.research.att.com/~bs/homepage.html Homepage Bjarne Stroustrup]{{Pranala mati|date=Februari 2021 |bot=InternetArchiveBot |fix-attempted=yes }}
* [http://www.cuj.com C++ Users Journal]
* [http://www.sgi.com/tech/stl/ Standard Template Library]
* [http://public.research.att.com/~bs/iso_release.html ISO Standard]{{Pranala mati|date=Februari 2021 |bot=InternetArchiveBot |fix-attempted=yes }}
* [http://erdani.org/ Andrei Alexandrescu]
* [http://www.codeguru.com/ Code guru, C++ resource]
* [httphttps://www.cplusplusscriptmlbb.com/2023/08/belajar-c-memahami-dasar-dasar-bahasa.html C++ basic tutorial]
* http://www.cplusplus.com/
* http://www.cplusplus.com/doc/tutorial/
Baris 355 ⟶ 438:
* http://en.cppreference.com/w/
* http://www.cs.cf.ac.uk/Dave/C/node3.html
* https://goonlinetools.com/cpp-compiler/
* http://faculty.cs.niu.edu/~mcmahon/CS241/Notes/compile.html{{Pranala mati|date=Februari 2021 |bot=InternetArchiveBot |fix-attempted=yes }}
* http://webcompiler.cloudapp.net/{{Pranala mati|date=Februari 2021 |bot=InternetArchiveBot |fix-attempted=yes }}
* http://www.compileonline.com/compile_cpp_online.php
* http://www.thefreecountry.com/compilers/cpp.shtml
* http://www.compilers.net/dir/free/compilers/ccpp.htm {{Webarchive|url=https://web.archive.org/web/20141013143049/http://www.compilers.net/Dir/Free/Compilers/CCpp.htm |date=2014-10-13 }}
* http://www.cppgameprogramming.com/
* http://www.cprogramming.com/game-programming.html
Baris 369 ⟶ 450:
[[Kategori:Bahasa pemrograman]]
[[Kategori:Artikel kelas-B bertopik teknologi informasi]]
[[Kategori:Perangkat lunak lintas platform]]
[[Kategori:Bahasa pemrograman dengan standar ISO]]
[[Kategori:Bahasa pemrograman tingkat tinggi]]
[[Kategori:Bahasa pemrograman yang dibuat pada tahun 1983]]