C + + (dibaca "Lihat plus plus") adalah sebuah statis diketik, free-form, multi-paradigma, dikompilasi, untuk keperluan umum bahasa pemrograman. Hal ini dianggap sebagai bahasa tingkat menengah, karena terdiri dari kombinasi keduanya tingkat tinggi dan tingkat rendah fitur bahasa. ini dikembangkan oleh Bjarne Stroustrup dimulai pada tahun 1979 di Bell Labs sebagai perangkat tambahan pada bahasa pemrograman C dan awalnya bernama "C dengan Kelas". It was renamed C++ in 1983. Ia kemudian dinamakan C + + pada tahun 1983.
Sebagai salah satu bahasa pemrograman paling populer yang pernah diciptakan, C + + secara luas digunakan dalam industri perangkat lunak.
Beberapa dari domain mencakup sistem aplikasi perangkat lunak, perangkat lunak aplikasi, device driver, perangkat lunak tertanam, performa tinggi server dan aplikasi-aplikasi client, dan perangkat lunak hiburan seperti video game.
Beberapa kelompok memberikan keduanya gratis dan kepemilikan C + + compiler perangkat lunak, termasuk proyek GNU, Microsoft, Intel dan. C + + telah sangat dipengaruhi banyak bahasa pemrograman populer lainnya, terutama Java.
C + + ini juga digunakan untuk desain hardware, di mana desain awalnya digambarkan dalam C + +, kemudian dianalisis, arsitektur terkendala, dan dijadwalkan untuk menciptakan tingkat transfer mendaftarkan bahasa deskripsi perangkat keras melalui sintesis tingkat tinggi.
Bahasa mulai sebagai tambahan untuk C, pertama menambahkan kelas, maka fungsi virtual, operator overloading, pewarisan berganda, template, dan pengecualian penanganan di antara fitur-fitur lainnya.
Setelah bertahun-tahun pembangunan, C + + bahasa pemrograman standar diratifikasi pada tahun 1998 sebagai ISO / IEC 14882: 1998. Bahwa standar masih saat ini, tetapi tahun 2003 diubah dengan teknis corrigendum ISO / IEC 14882:2003. Berikutnya versi standar (dikenal secara informal sebagai C + +0 x) adalah dalam pembangunan.
Sejarah
. Stroustrup mulai bekerja pada "C dengan Kelas" pada tahun 1979. Ide untuk membuat bahasa baru berasal dari pengalaman Stroustrup dalam pemrograman untuk gelar Ph.D. thesis. tesis.
Stroustrup menemukan bahwa Simula memiliki fitur yang sangat membantu untuk pengembangan perangkat lunak besar, tapi bahasa itu terlalu lambat untuk penggunaan praktis, sementara BCPL cepat tapi terlalu rendah tingkat cocok untuk pengembangan perangkat lunak besar.
Ketika Stroustrup mulai bekerja di AT & T Bell Labs, ia memiliki masalah menganalisis UNIX kernel yang berkaitan dengan komputasi terdistribusi. Remembering his Ph.D. Mengingat Ph.D. experience, pengalaman, Stroustrup berangkat untuk meningkatkan C bahasa dengan Simula-seperti fitur. C ini dipilih karena itu untuk keperluan umum, cepat, portabel dan banyak digunakan. Ada , CLU and ML . Selain C dan Simula, bahasa lain yang mengilhami dia adalah ALGOL 68, Ada, CLU dan ML.
Pada awalnya, kelas, kelas turunan, memeriksa jenis kuat, inlining, dan argumen default fitur ditambahkan ke C melalui Stroustrup's C + + ke C compiler, Cfront. Komersial pertama pelaksanaan C + + ini dirilis pada Oktober 1985.
Pada tahun 1983, nama bahasa berubah dari C dengan Kelas ke C + + (+ + menjadi operator peningkatan dalam C dan C + +). Fitur baru ditambahkan termasuk fungsi virtual, nama fungsi dan operator overloading, referensi, konstanta, yang dikendalikan oleh pengguna-toko bebas kontrol memori, meningkatkan memeriksa jenis, dan gaya BCPL komentar baris tunggal dengan dua garis miring maju (//).
Pada tahun 1985, edisi pertama dari The C + + Programming Language dirilis, menyediakan referensi penting untuk bahasa, karena belum ada standar resmi. Fitur baru termasuk beberapa warisan, kelas abstrak, statis fungsi anggota, fungsi anggota const, dan dilindungi anggota. In 1990, The Annotated C + + Reference Manual diterbitkan. Karya ini menjadi dasar untuk standar masa depan.
Akhir penambahan fitur termasuk template, pengecualian, namespaces, baru gips, dan tipe Boolean.
Sebagai bahasa C + + berevolusi, perpustakaan standar juga berkembang dengan itu. Selain pertama C + + standar perpustakaan adalah sungai I / O perpustakaan yang menyediakan fasilitas untuk menggantikan fungsi-fungsi C tradisional seperti printf dan scanf.
Kemudian, di antara yang paling signifikan penambahan pada perpustakaan standar, adalah Standar Perpustakaan Template.
C + + terus untuk digunakan dan merupakan salah satu bahasa pemrograman yang disukai untuk mengembangkan aplikasi yang profesional. Popularitas bahasa terus tumbuh.
Filosofi
Dalam The Design and Evolution of C + + (1994), Bjarne Stroustrup menjelaskan beberapa aturan yang ia gunakan untuk desain C + +:
• C C + + dirancang untuk menjadi statis diketik, tujuan umum sebagai bahasa yang efisien dan portabel dengan C
• C + + dirancang untuk secara langsung dan secara komprehensif mendukung berbagai gaya pemrograman (pemrograman prosedural, abstraksi data, pemrograman berorientasi obyek, dan pemrograman generik)
• C + + dirancang untuk memberikan pemrogram pilihan, bahkan jika ini memungkinkan para programmer untuk memilih salah
• C + + dirancang untuk menjadi seperti yang kompatibel dengan C sebagai mungkin, sehingga memberikan kelancaran transisi dari C
• C + + menghindari platform fitur yang tidak spesifik atau tujuan umum
• C + + tidak mendatangkan overhead untuk fitur yang tidak digunakan (dengan "nol-prinsip overhead")
• C + + yang dirancang untuk berfungsi tanpa lingkungan pemrograman yang canggih
Stroustrup juga menyebutkan bahwa C + + itu selalu dimaksudkan untuk membuat pemrograman lebih menyenangkan dan bahwa banyak makna ganda dalam bahasa yang disengaja.
Di dalam C + + Object Model (Lippman, 1996) menggambarkan bagaimana kompiler dapat mengkonversi C + + program pernyataan menjadi layout di memori. Penulis compiler Namun, bebas untuk menerapkan standar dalam cara mereka sendiri.
Bahasa fitur
C + + mewarisi sebagian besar sintaks C dan C preprocessor. Berikut ini adalah versi Bjarne Stroustrup dari program Halo dunia yang menggunakan C + + perpustakaan standar fasilitas streaming untuk menulis pesan ke keluaran standar:
#include # include
int main ( ) int main ()
{ (
std :: cout << "Hello, world! \n " ; std:: cout << "Halo, dunia! \ n";
} )
Mengembalikan nilai dari 'utama' fungsi adalah opsionalUntuk semua nilai lain-kembali fungsi-fungsi, gagal melakukannya hasil dalam perilaku undefined jika DNS mencapai akhir fungsi.
sumber : wikipedia.org
int main ( ) int main ()
{ (
std :: cout << "Hello, world! \n " ; std:: cout << "Halo, dunia! \ n";
} )
Mengembalikan nilai dari 'utama' fungsi adalah opsionalUntuk semua nilai lain-kembali fungsi-fungsi, gagal melakukannya hasil dalam perilaku undefined jika DNS mencapai akhir fungsi.
sumber : wikipedia.org
0 Comments:
Posting Komentar