mirror of
https://github.com/znc/znc.git
synced 2026-03-28 17:42:41 +01:00
Due to (intentional) lack of CFooMessage::operator=(CMessage), it was
a bit clumsy to do such copy-conversions:
CMessage Copy = Message;
CJoinMessage& JoinMsg = static_cast<CJoinMessage&>(Copy);
// ...
vs.
CJoinMessge JoinMsg;
JoinMsg.Clone(Message);
// ...
Alternatively, copy ctor(CMessage) and assignment operator=(CMessage)
could have been added to all CMessage subclasses. I've been trying to
avoid that, to make these operations very explicit. It has helped a
lot so far by preventing accidental copies.