Can any one tell why do we have copy and move constructors and assignments are explicitly deleted how it impacts on class behavior
class System : public std::enable_shared_from_this<System> {
public:
System();
virtual ~System();
System(const System&) = delete;
System(System&&) = delete;
System& operator=(const System&) = delete;
System& operator=(System&&) = delete;
---
}