Was ist die aktuelle "Best Practice" in Bezug auf die Einbeziehung von Qt-Header-Dateien bei der Verwendung eines modernen und aktuellen C++ - Compilers (z. B. MSVC2015) mit vorkompilierten Headern aktiviert?Best Practice für Qt-Includes und vorkompilierte Header?
Beispiel:
#include <QStringList>
#include <QTreeWidget>
#include <QListWidget>
gegen
#include <QtCore>
#include <QtGui>
Welche Konvention sollte ich für ein neues Projekt wählen?
Was sind die Vorteile/Nachteile von beiden?
Was ist häufiger bei neuen Projekten?
„... und die binären größer sein werden mit QtCore enthalten.“ Bist du dir da wirklich sicher? Ist es nicht so, dass der Compiler viel intelligenter darin ist zu sehen, was benötigt wird und was nicht als ein tatsächlicher Programmierer in Bezug auf vorkompilierte Header ist? – FlKo
Es hängt von Ihren Linker-Optionen –
Ich glaube nicht, dass das korrekt ist. Für die dynamische Verknüpfung macht es keinen Unterschied, da es alles extern ist. Bei der statischen Verknüpfung enthält der Compiler nur den Code, auf den der Benutzercode direkt oder indirekt verweist. Meine statische verknüpfte App ist nur 10 MB groß, auch wenn ich gerne über 50 MB statische Bibliotheken verwende. Es scheint, dass nur das, was ich tatsächlich verwende, hinzugefügt wird. – dtech