|
When building with Qt, the Moc keywords
signals and slots are defined using
preprocessor macros, causing programs using Boost.Signals and
Qt together to fail to compile. Although this is a problem
with Qt and not Boost.Signals, a user can use the two systems
together by defining the BOOST_SIGNALS_NAMESPACE
macro to some other identifier (e.g., signalslib)
when building and using the Boost.Signals library. Then the
namespace of the Boost.Signals library will be
boost::BOOST_SIGNALS_NAMESPACE instead of
boost::signals. To retain the original namespace
name in translation units that do not interact with Qt, you
can use a namespace alias:
namespace boost {
namespace signals = BOOST_SIGNALS_NAMESPACE;
}
|