I had my main like that:
QMap<QString, QString> folderMap;
int main(int argc, char *argv[])
{
QApplication *app = new QApplication(argc, argv);
.....
}
and I had folderMap defined as external in other classes when needed
I was getting the warning in that case.
Now I have:
QMap<QString, QString> *folderMap;
int main(int argc, char *argv[])
{
QApplication *app = new QApplication(argc, argv);
folderMap = new QMap<QString, QString>;
.....
}
and of course I changed the external definitions accordingly, etc.
Warning is gone in that case, all good, I prefer it that way.
I am just wondering why creating a 'simple' QMap (or QString, whatever)
in the same main() forces qApp to be created in another thread. You can
create whatever double, int, bool, or more, no problem. But not
QObjects. I have been contemplating this warning for the last 2 years
without a clue about why it occurs, not easy to guess.
Anyway it's gone... I still don't see any differences, but it does look
better without the warning ;)
Philippe.
Le 05-12-2016 21:44, Thiago Macieira a écrit :
Em segunda-feira, 5 de dezembro de 2016, às 14:27:01 PST, maitai
escreveu:
Hello,
Can you explain what is the bad thing about having this message?
It's a warning from Qt. That should be enough reason. ALL Qt warnings
are bugs
in your application. You should develop with QT_FATAL_WARNINGS set to 1
and fix
all warnings you get.
I will not speculate how bad this particular one might be. You've been
properly warned that it is bad. You can continue at your own risk
(read: we
won't help you until you fix this).
BTW I had this message since a long time, since this thread I have
removed some global QObject declarations in my main, and the message
is
gone. But it's not clear to me if it's any better and why.
Global constructors creating QObjects mean that your *real* main()
thread is
the Qt main thread. It's usually not a problem to have them, though I
advise
against.
The problem is if you create QGuiApplication in another thread.
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest