24 Pertanyaan Wawancara C++ Penting & Jawaban Ahli (Update 2021)
1) Apa itu kelas dalam C++?
Sebuah kelas adalah tipe data yang ditentukan pengguna yang mengelompokkan anggota data dan fungsi anggota ke dalam satu unit. Ia berfungsi sebagai cetak biru untuk membuat objek (instance) dengan struktur yang sama.
2) Bagaimana mendeklarasikan kelas dalam C++?
class ClassName { // data members // fungsi anggota }; Deklarasi diakhiri dengan titik koma. Di dalam kurung kurawal Anda mendefinisikan antarmuka dan detail implementasi kelas.
3) Apa peran int main() dalam program C++?
Fungsi main() adalah titik entri aplikasi C++. Kompiler pertama kali menerjemahkan file sumber menjadi kode objek (kompilasi), lalu menggabungkannya menjadi eksekutabel (pengaitan). Eksekusi dimulai di int main() dan berakhir saat mengembalikan nilai.
4) Apa itu objek C++?
Objek adalah instance dari sebuah kelas. Ia berisi anggota data kelas dan dapat memanggil fungsi anggotanya. Contohnya:
class Student { public: int rollno; std::string name; }; Student A, B; // A dan B adalah objek tipe Student 5) Apa ciri-ciri anggota kelas?
- Anggota data dan fungsi anggota termasuk dalam kelas.
- Harus dideklarasikan dalam definisi kelas.
- Anggota tidak dapat dideklarasikan ulang di dalam kelas yang sama.
- Anggota tambahan tidak dapat ditambahkan di luar tubuh kelas.

6) Apa itu fungsi anggota?
Fungsi anggota mendefinisikan perilaku sebuah kelas. Mereka beroperasi pada anggota data kelas dan menyediakan antarmuka untuk berinteraksi dengan objek.
7) Tipe variabel dasar apa yang digunakan untuk ekspresi kondisional?
bool – nilai benar/salah char – karakter tunggal int – bilangan bulat float / double – bilangan floating-point
8) Apa yang dilakukan namespace std;?
Namespace std berisi semua komponen perpustakaan standar C++ (kelas, fungsi, objek). Menggunakan using namespace std; memungkinkan Anda merujuk ke komponen ini tanpa awalan std::.
9) Apa itu loop dan tipe apa saja yang ada dalam C++?
Loop secara berulang mengeksekusi blok kode sampai kondisi terpenuhi. C++ mendukung tiga konstruksi loop utama:
while – mengeksekusi selama kondisi benar. for – mengulang sejumlah kali yang ditentukan. do-while – mengeksekusi setidaknya sekali lalu mengulang selama kondisi benar.
10) Bagaimana fungsi diklasifikasikan dalam C++?
- Tipe pengembalian
- Nama
- Parameter (tipe dan jumlah)
- Tubuh fungsi (implementasi)
11) Apa itu pengakses dan tipe-tipenya?
- private – dapat diakses hanya dalam kelas.
- public – dapat diakses dari kode mana saja yang dapat melihat kelas.
- protected – dapat diakses dalam kelas dan oleh kelas turunan.
12) Apa itu operator? Berikan contoh.
Operator melakukan operasi pada operand. Tipe meliputi penugasan, aritmatika, logika, dan lainnya. Contoh – penjumlahan aritmatika:
#include <iostream> using namespace std; int main() { int a = 21; int b = 10; int c = a + b; cout << "Nilai c: " << c << endl; return 0; } Program menghasilkan output: Nilai c: 31.
13) Apa itu string karakter gaya C?
Ia adalah array satu dimensi karakter yang diakhiri dengan karakter null \0. Contoh:
#include <iostream> using namespace std; int main() { char greeting[6] = {'H','e','l','l','o','\0'}; cout << "Pesan sapaan: " << greeting << endl; return 0; } Output: Pesan sapaan: Hello.
14) Apa itu variabel referensi?
Referensi adalah alias untuk variabel yang sudah ada, dideklarasikan dengan operator ampersand (&). Harus diinisialisasi saat deklarasi dan tidak dapat diubah arahnya.
15) Jelaskan polimorfisme dalam C++.
Polimorfisme memungkinkan operasi yang sama untuk berperilaku berbeda berdasarkan tipe objek. Ia memungkinkan overloading fungsi, overloading operator, dan fungsi virtual untuk binding dinamis.
Contoh:
- Penjumlahan bilangan bulat:
5 + 5 - Penggabungan string:
"Medical" + "Internship" - Penjumlahan floating-point:
3.14 + 2.27
16) Apa itu abstraksi data?
Abstraksi data hanya mengekspos detail penting kepada pengguna sambil menyembunyikan spesifikasi implementasi. Misalnya, cout mencetak teks tanpa mengungkap cara perangkat output diakses.
17) Apa itu penanganan pengecualian dalam C++?
try – melingkupi kode yang dapat melempar pengecualian. catch – menangani tipe pengecualian tertentu. throw – menghasilkan pengecualian.
18) Apa itu enkapsulasi data?
Enkapsulasi menggabungkan data dan operasi ke dalam satu unit (kelas) dan membatasi akses langsung ke anggota data, mempromosikan modularitas dan kemampuan pemeliharaan.
19) Apa tipe-tipe fungsi anggota?
- Sederhana (non-statik, non-konst)
- Statik – termasuk ke kelas, bukan instance.
- Konst – tidak memodifikasi objek.
- Inline – menyarankan inlining oleh kompiler.
- Friend – bukan anggota tetapi dapat mengakses anggota private/protected.
20) Apa pernyataan pengambilan keputusan? Berikan contoh if.
- Pernyataan
if - Pernyataan
switch - Operator bersyarat (ternary)
Contoh:
#include <iostream> using namespace std; int main() { int x = 10, y = 5; if (x > y) { cout << "x lebih besar dari y" << endl; } return 0; } 21) Apa itu multithreading?
Multithreading memungkinkan eksekusi serentak beberapa thread dalam satu proses. Tipe:
- Berdasarkan proses – proses terpisah berbagi sumber daya sistem.
- Berdasarkan thread – beberapa thread berbagi ruang memori proses yang sama.
22) Apa itu upcasting?
Upcasting mengonversi pointer atau referensi kelas turunan menjadi tipe kelas dasarnya, mengaktifkan perilaku polimorfik.
23) Apa itu preprosesor?
Direktif preprosesor (#include, #define, dll.) menginstruksikan kompiler untuk melakukan substitusi teks sebelum kompilasi sebenarnya.
24) Apa itu konstruktor salinan dan tujuannya?
Konstruktor salinan membuat objek baru sebagai salinan dari objek yang sudah ada dari kelas yang sama. Ia dipanggil saat inisialisasi objek, argumen fungsi diteruskan oleh nilai, atau nilai pengembalian.
Unduh PDF Gratis: Pertanyaan & Jawaban Wawancara C++