Wir definieren eine C++ - Klasse in einem .h
und definieren ihre Methoden in einem .cpp
, aber es macht den Code weniger organisiert.Wird die ausführbare Datei größer, wenn eine ganze Klassendefinition in ein ".h" eingefügt wird?
Ich möchte alle Definition der Methode in der Klassendefinition, die in einer .h
-Datei ist, aber ich mache mir Sorgen, dass der Compiler doppelten Code für die gleichen Methoden/Funktionen generieren, wenn eine Klasse Header-Datei von verschiedenen Dateien enthalten ist.
Erkennt der Linker die doppelten Codeteile, um die Dateigröße zu reduzieren?
Wenn nicht, ist es besser .hpp
stattdessen zu verwenden? Ich habe gehört, dass ein .hpp
dafür ist.
Und es macht einen kleinen Unterschied, wenn ich nur eine .h
Datei für eine .hpp
(ich weiß nicht warum), mit G ++ kompiliert ändern.
Offsite-Links sind keine guten Antworten. Sie müssen die Frage hier beantworten, nicht nur einen Link zur Verfügung stellen –
@DavidHeffernan: Der Link verweist auf stackoverflow.com wie ist das Off-Site? (Ich stimme jedoch dem Kern Ihrer Aussage zu) – bitmask
Beantwortet auch nicht wirklich die Frage direkt. –