#include <tb_noncopyable.hpp>
When making an object that should not be copied or assigned to another object simply deriving from Noncopyable will do the trick. This guarentees that MyObject object(otherObject); and object = otherObject will cause a compilation error, preventing copy and/or assignment, including move ctor and move operator.