Is it important to declare the namespace with QT_BEGIN_NAMESPACE .. QT_END_NAMESPACE

Viewed 6096

What is the effect of QT_BEGIN_NAMESPACE?

QT_BEGIN_NAMESPACE
class QLineEdit;
QT_END_NAMESPACE

If I don't use the class declaration like that, will any problem occur?

2 Answers

if you do not use them, it may crash in certain scenarios.

The Qt-in-Namespace feature serves as a tool to handle certain scenarios involving multiple configurations of Qt more gracefully. E.g. before Qt-in-Namespace a Qt 3 based application in Linux would immediately segfault as soon as it tries to dlopen() a shared object that is linked to Qt 4. With the Qt in namespace feature not only can the crash be prevented, but under certain circumstances this combination might actually "work". source

Related