Daftar Isi

Tutorial Pemrograman C++

Panduan komprehensif untuk belajar pemrograman C++ dari dasar hingga topik lanjutan.

Tutorial Pemrograman C++: Panduan Komprehensif

Selamat datang di tutorial pemrograman C++ yang komprehensif ini! Baik Anda seorang pemula maupun yang ingin meningkatkan keterampilan C++ Anda, panduan ini akan memandu Anda melalui dasar-dasar dan membantu Anda mendalami konsep yang lebih canggih seiring kemajuan Anda.

Pengenalan C++

C++ adalah perluasan dari bahasa pemrograman C, yang dikenal dengan performa tinggi dan dukungannya untuk pemrograman berorientasi objek. C++ banyak digunakan dalam pemrograman sistem, pengembangan game, dan aplikasi berskala besar.

Mengapa Belajar C++?

  • Performa: C++ dikenal karena efisiensinya dan umum digunakan dalam aplikasi yang kritis terhadap performa.
  • Pemrograman Berorientasi Objek: C++ mendukung class dan object, yang membantu mengatur dan memodulasi kode.
  • Pustaka Standar yang Kaya: C++ menawarkan pustaka standar yang kuat yang mencakup struktur data, algoritma, dan utilitas yang berguna.

Menyiapkan C++

Sebelum Anda mulai membuat kode, Anda perlu menyiapkan lingkungan pengembangan Anda. Berikut caranya:

  1. Instal Compiler C++: Pilihan populer termasuk GCC (GNU Compiler Collection) untuk Linux/macOS dan MinGW untuk Windows.
  2. Pilih IDE/Editor Teks: Visual Studio Code, CLion, dan Code::Blocks adalah IDE yang populer untuk C++. Atau, Anda bisa menggunakan editor teks seperti Sublime Text.
  3. Verifikasi Instalasi: Untuk memverifikasi bahwa compiler terinstal dengan benar, ketik g++ --version di terminal atau command prompt Anda.

Dasar-dasar C++

Sekarang setelah lingkungan Anda siap, mari kita mulai dengan dasar-dasarnya. Di bagian ini, kita akan membahas:

  • Variabel dan Tipe Data: Pelajari cara mendeklarasikan dan menggunakan variabel di C++.
  • Struktur Kontrol: Pahami cara menggunakan pernyataan kondisional dan perulangan.
  • Fungsi: Pelajari cara membuat blok kode yang dapat digunakan kembali dengan fungsi.

Variabel dan Tipe Data

#include <iostream>
 
int main() {
    int usia = 25;
    double tinggi = 5.9;
    char inisial = 'A';
 
    std::cout << "Usia: " << usia << ", Tinggi: " << tinggi << ", Inisial: " << inisial << std::endl;
    return 0;
}

Struktur Kontrol

#include <iostream>
 
int main() {
    int usia = 20;
 
    if (usia >= 18) {
        std::cout << "Anda sudah dewasa." << std::endl;
    } else {
        std::cout << "Anda masih di bawah umur." << std::endl;
    }
 
    for (int i = 0; i < 5; i++) {
        std::cout << "Hitungan: " << i << std::endl;
    }
 
    return 0;
}

Fungsi

#include <iostream>
 
void sapa(std::string nama) {
    std::cout << "Halo, " << nama << "!" << std::endl;
}
 
int main() {
    sapa("Alice");
    return 0;
}

C++ Tingkat Menengah

Setelah menguasai dasar-dasarnya, saatnya menjelajahi fitur-fitur C++ yang lebih canggih:

  • Class dan Object: Pelajari cara menggunakan pemrograman berorientasi objek di C++.
  • Pointer dan Reference: Pahami kekuatan pointer dan reference untuk manajemen memori dan optimisasi performa.
  • Standard Template Library (STL): Temukan pustaka standar C++ yang kaya, termasuk vector, set, dan map.

Class dan Object

#include <iostream>
 
class Anjing {
public:
    std::string nama;
    std::string jenis;
 
    void menggonggong() {
        std::cout << nama << " berkata Guk!" << std::endl;
    }
};
 
int main() {
    Anjing anjing;
    anjing.nama = "Buddy";
    anjing.jenis = "Golden Retriever";
    anjing.menggonggong();
 
    return 0;
}

Pointer dan Reference

#include <iostream>
 
int main() {
    int x = 10;
    int *ptr = &x;  // Pointer ke x
 
    std::cout << "Nilai dari x: " << x << std::endl;
    std::cout << "Alamat dari x: " << ptr << std::endl;
    std::cout << "Nilai di alamat: " << *ptr << std::endl;
 
    return 0;
}

Standard Template Library (STL)

#include <iostream>
#include <vector>
 
int main() {
    std::vector<int> angka = {1, 2, 3, 4, 5};
 
    for (int num : angka) {
        std::cout << num << " ";
    }
 
    std::cout << std::endl;
    return 0;
}

C++ Tingkat Lanjut

Setelah Anda nyaman dengan topik tingkat menengah, saatnya mendalami konsep yang lebih canggih:

  • Pewarisan (Inheritance) dan Polimorfisme: Pelajari cara menggunakan pewarisan untuk memperluas class dan polimorfisme untuk membuat kode yang fleksibel.
  • Operator Overloading: Pahami cara mendefinisikan ulang operator untuk objek kustom.
  • Penanganan Eksepsi (Exception Handling): Pelajari cara menangani kesalahan dan eksepsi di C++.

Pewarisan (Inheritance) dan Polimorfisme

#include <iostream>
 
class Hewan {
public:
    virtual void suara() {
        std::cout << "Suara hewan generik." << std::endl;
    }
};
 
class Anjing : public Hewan {
public:
    void suara() override {
        std::cout << "Guk!" << std::endl;
    }
};
 
int main() {
    Hewan *hewan = new Anjing();
    hewan->suara();
 
    delete hewan;
    return 0;
}

Operator Overloading

#include <iostream>
 
class Kompleks {
public:
    int real, imag;
 
    Kompleks(int r = 0, int i = 0) : real(r), imag(i) {}
 
    Kompleks operator + (const Kompleks &obj) {
        return Kompleks(real + obj.real, imag + obj.imag);
    }
 
    void tampilkan() {
        std::cout << real << " + " << imag << "i" << std::endl;
    }
};
 
int main() {
    Kompleks c1(3, 4), c2(1, 2);
    Kompleks c3 = c1 + c2;
 
    c3.tampilkan();
    return 0;
}

Penanganan Eksepsi (Exception Handling)

#include <iostream>
 
int main() {
    try {
        int a = 10, b = 0;
        if (b == 0)
            throw "Kesalahan: Pembagian dengan nol!";
        std::cout << a / b << std::endl;
    } catch (const char* msg) {
        std::cerr << msg << std::endl;
    }
 
    return 0;
}

Kesimpulan

Selamat telah menyelesaikan tutorial C++ ini! Anda telah mempelajari segalanya mulai dari dasar hingga topik lanjutan seperti pewarisan dan operator overloading. C++ adalah bahasa yang kuat, dan dengan terus berlatih, Anda dapat membangun aplikasi berkinerja tinggi.

Selamat ngoding!