#include:
< en > en zonder extensie .h.
.h en met voorvoegsel c.
.h (van "header"). Bij conventie met kleine letters.
#include <iostream> #include <ctime> // vroeger <time.h> #include "util.h" #include "test.h"
De geïncludeerde headers komen letterlijk in de programmatekst terecht. De volgorde van includeren is dus van belang! Opm. het is aan te raden standaard-bibliotheken eerst te includeren, dus voor eigen bibliotheken.
Headers kunnen op hun beurt andere headers includeren.
Wie zo'n header includeerd krijgt automatisch alle onrechtstreeks geincludeerde definities "op zijn bord" (zie namespace pollution).
Indien je bv. <iostream> includeert,
is het typisch zo dat onrechtstreeks <cstdlib> en <string> worden geincludeerd. Spijtig genoeg
is dit afhankelijk van omgeving tot omgeving (er zijn bv. verschillen tussen gdb en Visual Studio).
Het is aangewezen elke header die je effectief gebruikt expliciet
te includeren, dus ook bv. <string>.
In een project worden bepaalde headers in meerdere bestanden geincludeerd. Nochtans is het verboden om een klasse tweemaal te definiëren. Om dit te vermijden gebruikt met "guards":
#ifndef MIJN_UNIEKE_NAAM #define MIJN_UNIEKE_NAAM // ... inhoud hier #endifAls unieke naam kiest men vaak de naam van de header met wat underscores, bv.
__UTIL_H__
Bij het compileren worden de headerbestanden opgezocht:
include-map (of submappen) van de compiler (bv. c:\Dev-Cpp\include
.), of in andere mappen naar keuze. Je kunt de compiler hiervan op de hoogte brengen d.m.v. de command-line parameter -I. In de meeste IDE's kun je dit echter makkelijker via project-opties. Meer uitleg vind je in dit artikel over separate compilation en namespaces.