Allgemeines include oder einzlne

Du bist neu in der Welt von C++? Dann schau hier herein!
Antworten
Kei
Beiträge: 10
Registriert: 4. März 2009 20:52

Allgemeines include oder einzlne

Beitrag von Kei »

Mich würde interessieren ob es irgend einen Performance Nachteil ergibt (Compilerzeit...), wenn ich statt

Code: Alles auswählen

#include <QtGui/QFrame>
#include <QtGui/LCDNumber>
...
sowas mache

Code: Alles auswählen

#include <QtGui>
Da die zweite Lösung natürlich deutlich weniger Arbeit macht, würde ich sie aus Bequemlichkeit bevorzugen. Sollte dann aber zb das Compilieren doppelt so lange dauern, würde sich die scheinbare Zeitersparnis schnell auflösen.
RavenIV
Beiträge: 267
Registriert: 21. Januar 2009 14:24
Wohnort: Waldshut

Beitrag von RavenIV »

Die zweite Möglichkeit ist die bessere.
Wird auch in der Qt-Hilfe so beschrieben.
Schlussendlich wird eh nur includiert, was wirklich benötigt wird.
Linux, das längste Text-Adventure aller Zeiten
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

RavenIV hat geschrieben: Schlussendlich wird eh nur includiert, was wirklich benötigt wird.
Wie soll das denn funktionieren? Compilieren != Linken !

Die zweite Möglichkeit ist definitiv langsamer - wie viel langsamer hängt von deinen Platten ab. Aber es ist m.E. nicht zu unterschätzen - vor allem wenn man nur wenige Qt-Includes hat. Und wenn ich eine Library bekomme in deren Headern nur <QtCore> steht gibts gleich n Minuspunkt :)
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Kei
Beiträge: 10
Registriert: 4. März 2009 20:52

Beitrag von Kei »

Jetzt steht es 1:1 :P
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

definitiv 2:1 für die erste Variante.. aus den von Chr. genannten Gründen. Wobei ich (rein optisch)

Code: Alles auswählen

#include <QFrame>
#include <QLCDNumber>
bevorzuge
Kei
Beiträge: 10
Registriert: 4. März 2009 20:52

Beitrag von Kei »

Stellt sich nur noch die Frage ob diese Variante einen Nachteil hat, denn optisch wäre sie wirklich gegenüber der reinen Variante 1 zu bevorzugen.
Antworten