Deklaration und Implementierung nicht immer trennen?
Verfasst: Mi Okt 17, 2012 6:43 am
Guten Morgen,
mich beschäftigt gerade die Frage, ob es immer sinnvoll ist die Deklaration in Headerdateien und dessen Implementierung in .c .cpp immer zu trennen?
Ich habe mal gehört, dass dies Sinn macht wenn man eine Lib schreibt und nur die Prototypen dem Kunden zur Verfügung zu stellen möchte. Oder wenn man wirklich ganz große Projekte hat, um dort dann die Zeit für die Kompilierung zu verringern. Ich habe aber auch irgendwas im Hinterkopf, in der Art von: Der Compiler kann viel besser optimieren wenn er auch gleich die Implementierung vorgesetzt bekommt, da er später nicht mehr weiß was in einer anderen Objektdatei gemacht/gebraucht wurde.
Noch ein Grund für diese Aufteilung war ja auch die begrenzten Ressourcen früherer Rechner, aber heute kann man schon so einiges im Arbeitsspeicher halten, was mich noch neugieriger auf eine Antwort macht.
Also, wann ist es heute nicht mehr sinnvoll, im Sinne der Optimierung, Header und Implementierung zu trennen?
mich beschäftigt gerade die Frage, ob es immer sinnvoll ist die Deklaration in Headerdateien und dessen Implementierung in .c .cpp immer zu trennen?
Ich habe mal gehört, dass dies Sinn macht wenn man eine Lib schreibt und nur die Prototypen dem Kunden zur Verfügung zu stellen möchte. Oder wenn man wirklich ganz große Projekte hat, um dort dann die Zeit für die Kompilierung zu verringern. Ich habe aber auch irgendwas im Hinterkopf, in der Art von: Der Compiler kann viel besser optimieren wenn er auch gleich die Implementierung vorgesetzt bekommt, da er später nicht mehr weiß was in einer anderen Objektdatei gemacht/gebraucht wurde.
Noch ein Grund für diese Aufteilung war ja auch die begrenzten Ressourcen früherer Rechner, aber heute kann man schon so einiges im Arbeitsspeicher halten, was mich noch neugieriger auf eine Antwort macht.
Also, wann ist es heute nicht mehr sinnvoll, im Sinne der Optimierung, Header und Implementierung zu trennen?