[Qt-creator] Proposals for Updating the Qt Creator Coding Style
Daniel Teske
daniel.teske at digia.com
Wed Oct 1 16:21:37 CEST 2014
Hi,
since current master allows for using qt5 only features in Creator's source
code, I propose the following (independent) changes/additions to our coding
style.
** Qt5 connects vs Qt4 connects
- Prefer to use qt5 style connects with member function pointers to the qt4
style of using SIGNAL and SLOT macros.
- Avoid overloading signals or slots
- Avoid calling connect via "object->connect()"
- Be careful with lambda slots
Reasons:
The qt5 connects are type checked at compile time, which eliminates a huge
error source. Also the code model can understand them better than the SIGNAL
and SLOT macros.
** Qt Logging Framework
- This is the preferred solution for logging in Creator.
Reasons: This allows for one way to disable/enable logging for all of Creator.
** QRegularExpression
- Prefer to use QRegularExpression to QRegExp, except if you need QRegExp's
features, e.g. wildcard matching.
- If the code is performance critical measure which regular expression engine
is faster.
Reasons:
QRegularExpression has a better api and a more commonly used pattern syntax.
In general performance should be better, but if it matters, you need to
measure.
** QStringLiteral
- Prefer to use instead of QString::fromLatin1()
- QLatin1String is still fine to use, if you don't need a QString
Reasons:
There's no huge difference to using QStringLiteral or not.
daniel
More information about the Qt-creator
mailing list