No, but for most types of resources managed (like thread, file, hardware
device, network socket and the like) copy constructor and copy assignment
do not make any sense. Therefore those two short tests are usually handy:
ststic_assert(!std::is_copy_constructible<Foo>::value
, "Foo should not be copy constructible");
ststic_assert(!std::is_copy_assignable<Foo>::value
, "Foo should not be copy assignable");
If to generalize, then it makes sense to test such type traits as
first thing for any class.