On 05/12/2011 02:57 PM, Carl Trieloff wrote:


ManagementDirectExchange::ManagementDirectExchange(const std::string&  _name,
                                                    bool
_durable,
                                                    const FieldTable&   _args,
                                                    Manageable*
_parent, Broker* b ) :
     Exchange (_name, _durable, _args, _parent, b),
     DirectExchange(_name, _durable, _args, _parent, b),
     managementAgent(0) {}


why do we call Exchange() and DirectExchange() -- we only need
DirectExchange() which will call Exchange() or am I missing something?


class ManagementDirectExchange : public virtual DirectExchange

Using virtual inheritance forces you to explicitly call all the base class constructors, a bit of arcane C++ lore. However I have no idea why virtual inheritance is used here. It may be unnecessary.

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to