Menu
CoddyTech

File Header dan File Source

Termasuk bagian Pemrograman Berorientasi Object dalam perjalanan C++ di Coddy. Pelajaran 3 dari 104.

Dalam C++, kode dibagi menjadi file header (.h) untuk deklarasi dan file sumber (.cpp) untuk implementasi.

File header dengan header guard (helpers.h)

#ifndef HELPERS_H
#define HELPERS_H

#include <string>

std::string greet(std::string name);
int addNumbers(int a, int b);

#endif

File sumber yang berisi implementasi (helpers.cpp)

#include "helpers.h"

std::string greet(std::string name) {
    return "Hello, " + name + "!";
}

int addNumbers(int a, int b) {
    return a + b;
}

Menggunakannya di main

#include <iostream>
#include "helpers.h"

int main() {
    std::cout << greet("Alice") << std::endl;
    std::cout << addNumbers(5, 3) << std::endl;
    return 0;
}

Keluaran:

Hello, Alice!
8

Header guard (#ifndef, #define, #endif) mencegah header disertakan beberapa kali. File .h mendeklarasikan apa yang tersedia (prototipe), sedangkan file .cpp mendefinisikan cara kerjanya (implementasi).

challenge icon

Tantangan

Sedang

Buat tiga fungsi pembantu yang dibagi ke dalam file header dan file sumber:

  • helpers.h: Deklarasi fungsi dengan header guard
  • helpers.cpp: Implementasi fungsi

Fungsi yang perlu dibuat:

  • greet(name): mengembalikan "Hello, <name>!"
  • ageInTenYears(age): mengembalikan age + 10
  • checkAdult(name, age): mengembalikan "<name> is an adult" jika usia >= 18, jika tidak, mengembalikan "<name> is a minor"

Coba sendiri

#include <iostream>
#include "helpers.h"

int main() {
    std::string name;
    int age;
    std::getline(std::cin, name);
    std::cin >> age;
    
    std::cout << greet(name) << std::endl;
    std::cout << "In 10 years you will be " << ageInTenYears(age) << std::endl;
    std::cout << checkAdult(name, age) << std::endl;
    return 0;
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pemrograman Berorientasi Object

Latihan sendiri: Compiler C++ online