这是我的结构,出现错误

错误C2280:“ LandCell :: LandCell(void)”:尝试引用已删除的函数
注意:编译器在此处生成了“ LandCell :: LandCell”

struct LandCell
{
    AnimatedBitmap sprite;
    bool isColliding;
};


当我单击注释时,它指向结构的右括号;

我读过,如果您定义自己的移动/复制构造函数,则可能会发生这种情况,但是在这种情况下,我没有定义任何内容,并且我的默认构造函数似乎已被删除。

编辑:当我创建一个landcell对象时,会发生此错误,在我的代码中是一个全局对象,就像这个结构一样,所以我有

struct LandCell {
...
};

LandCell land1;


这是AnimatedBitmap类的顶部

class AnimatedBitmap
{
public:

AnimatedBitmap(int RMKey);
AnimatedBitmap(BitmapFile*);
~AnimatedBitmap();


顺便说一句,当我删除AnimatedBitmap重载的Assinment运算符和复制构造函数时,此错误开始发生。

最佳答案

我的猜测是AnimatedBitmap没有默认的构造函数。
  – 7分钟前,一些程序员花花公子


那就是问题所在。

10-06 15:53