Panduan Lengkap Belajar C++
Dari sejarah awal hingga praktik modern C++23 — dibuat sederhana, mendalam, dan mudah dipahami.
1. Sejarah & Akar
Untuk memahami C++, mari kita lihat akar sejarahnya.
- Algol (1958) → bahasa awal yang memengaruhi banyak bahasa pemrograman.
- BCPL (1966) → bahasa sederhana untuk sistem.
- B (1969) → dibuat oleh Ken Thompson, cikal bakal C.
- C (1972) → oleh Dennis Ritchie, digunakan untuk menulis UNIX.
- C++ (1979) → Bjarne Stroustrup menambahkan class ke C, awalnya disebut “C with Classes”.
Nama C++ berasal dari operator
++ di C, artinya “peningkatan dari C”.2. Struktur Dasar Program C++
Program C++ paling sederhana:
#include <iostream>
using namespace std;
int main() {
cout << "Halo, dunia!" << endl;
return 0;
}
Penjelasan:
#include <iostream> → memasukkan pustaka input/output.using namespace std; → agar bisa menulis cout tanpa std::.main() → titik awal eksekusi program.
3. Tipe Data & Variabel
Beberapa tipe data dasar:
int→ bilangan bulatfloat,double→ pecahanchar→ karakter tunggalstring→ teksbool→ true/false
int umur = 17;
double pi = 3.14;
bool lulus = true;
string nama = "Andi";
4. Kontrol Alur
if (umur >= 18) {
cout << "Dewasa";
} else {
cout << "Belum dewasa";
}
for (int i=0; i<5; i++) {
cout << i << " ";
}
5. Fungsi
int tambah(int a, int b) {
return a + b;
}
int main() {
cout << tambah(3,4); // output: 7
}
6. Pointer & Memori
Pointer menyimpan alamat variabel:
int x = 10;
int* ptr = &x;
cout << "Nilai: " << *ptr; // akses nilai
cout << "Alamat: " << ptr; // akses alamat
7. OOP (Object-Oriented Programming)
class Mahasiswa {
public:
string nama;
int umur;
Mahasiswa(string n, int u) {
nama = n; umur = u;
}
void cetak() {
cout << nama << " (" << umur << ")";
}
};
int main() {
Mahasiswa m("Budi", 20);
m.cetak();
}
8. Template & STL
#include <vector>
#include <algorithm>
vector<int> angka = {4,1,3,2};
sort(angka.begin(), angka.end());
for(int a: angka) cout << a << " ";
9. Fitur Modern (C++11 → C++23)
// Lambda function
auto kali = [](int a,int b){ return a*b; };
cout << kali(3,4); // 12
// Smart Pointer
#include <memory>
auto p = make_shared<int>(10);
10. Studi Kasus & Latihan
- Buat kalkulator sederhana (+, -, *, /) dengan fungsi terpisah.
- Buat class
PersegiPanjangdengan method luas & keliling. - Gunakan
vectoruntuk menyimpan nilai mahasiswa lalu hitung rata-rata.
No comments:
Post a Comment