Study
C++

Fungsi di C++ (Overloading & Default Parameter)

Penjelasan

Fungsi di C++ mewarisi konsep dasar dari C (return type wajib, void kalau tidak mengembalikan apa pun), tapi menambahkan dua fitur baru: function overloading (beberapa fungsi dengan NAMA SAMA tapi jumlah/tipe parameter beda — compiler otomatis memilih versi yang cocok) dan default parameter (parameter yang punya nilai bawaan kalau tidak diisi saat pemanggilan).

Contoh Konsep

#include <iostream>

// Function overloading
int jumlahkan(int a, int b) {
    return a + b;
}

double jumlahkan(double a, double b) {
    return a + b;
}

// Default parameter
std::string sapa(std::string nama, std::string salam = "Halo") {
    return salam + ", " + nama + "!";
}

int main() {
    std::cout << jumlahkan(2, 3) << std::endl;     // 5, versi int
    std::cout << jumlahkan(2.5, 3.5) << std::endl; // 6, versi double
    std::cout << sapa("CompileDaily") << std::endl; // Halo, CompileDaily!
    return 0;
}

Praktikum

Buat fungsi luas(int panjang, int lebar) untuk persegi panjang. Buat overload-nya luas(int sisi) untuk persegi (satu parameter saja). Panggil keduanya dari main() dan tampilkan hasilnya.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Function overloading dibedakan compiler lewat SIGNATURE (jumlah dan tipe parameter), BUKAN return type — dua fungsi dengan parameter identik tapi return type beda akan dianggap konflik, bukan overload yang valid.