我正在尝试创建一个永远不会重复的类,因为它的字段中有很多数据。为此,我定义了这样的类:
class Foo {
public:
Foo(int i);
Foo();
Foo(const Foo&) = delete;
}
如果我尝试执行以下操作,则会导致编译器错误:
Foo a(2);
Foo b = a;
但是,无论出于何种原因,这都不涵盖复制数据的情况。
Foo* array;
array = new Foo[10000];
Foo a(2);
array[1] = a;
这是为什么?