Header-Dateien (*.h) in C++
-
Hallo Programmier-Gemeinde,
ich kapierte den Unterschied zwieschen *.cpp und *.h Dateien in C++ nicht richtig.
Sehe ich das richtig:
In Java gibt es mehrere *.class Dateien. Eine davon hat eine main-Fkt. Auf die anderen wird nur zugegriffen.In C++ ist in der *.h Datei die Schnittstelle zum Beispiel für eine Methode, die in der *.cpp Datei, implementiert ist.
Oder, habe ich da was falsch verstanden ?
mfg
trivial
-
trivial_ schrieb:
In C++ ist in der *.h Datei die Schnittstelle zum Beispiel für eine Methode, die in der *.cpp Datei, implementiert ist.
Z.B. :).
Allgemeiner: In einem Header (*.h, *.hh, *.hpp) stehen sämtliche Deklarationen (und inline-Funktionen...) und in einer *.cpp-Datei stehen die entsprechenden Implementationen dazu. (Template-Header bilden hier meistens eine Ausnahme. Bei ihnen stehen die Implementationen in den allermeisten Fällen ebenfalls im Header).
Header werden gewöhnlich über den Präprozessor in entsprechenden cpp-Dateien eingebunden, um so ein Modul zu erhalten, welches man dann unabhängig von anderen Modulen compiliert.
Gruß Caipi
-
Hallo Caipi,
danke der schnellen verständlichen Antwort.
mfg
trivial