【发布时间】:2020-04-18 05:45:00
【问题描述】:
我经常看到这样的(简化的)代码:
class A {
public:
A(int a) :a{a} {}
A(const A&) = delete;
A& operator=(const A&) = delete;
private:
int a;
}
然后,在整个程序中,类 A 只被实例化一次。
删除复制构造函数和operator= 同时不创建类 Singleton 的实际原因是什么?
【问题讨论】:
-
考虑
std::thread,它代表一个线程。当然可以有多个线程,但是复制一个线程的语义是什么?
标签: c++ oop constructor copy singleton