1.將拷貝構造函數和賦值運算符聲明為私有,並不予實現
class Uncopyable { private: Uncopyable(const Uncopyable &); // 阻止copying Uncopyable &operator=(const Uncopyable &); };
2.使用delete
class Uncopyable { Uncopyable(const Uncopyable &) =delete; // 阻止copying Uncopyable &operator=(const Uncopyable &)=delete; };