CopyingIsForbidden - send should not copy data but pass by const reference, shared_ptr and instances of classes with shared_ptr members should not be passed by value if not needed to avoid the cost of incrementing/decrementing the ref count which are atomic operations and hence not very cheap.