Foo() = delete; Foo(const Foo& orig) = delete; Foo(Foo&& orig) = delete; Foo operator=(const Foo &other) = delete; Foo operator=(Foo &&other) = delete;