gpt4 book ai didi

c++ - 无法分配抽象类型的对象 'Rectangle'

转载 作者:行者123 更新时间:2023-11-28 02:46:14 24 4
gpt4 key购买 nike

<分区>

我有 2 个类:

表格.h

class Forme
{
private:
string _nom;

protected:
Forme(string nom){nom = _nom;}
~Forme();


virtual string ToString()const = 0;
};

矩形.h

class Rectangle : public Forme
{
private :
int _x;
int _y;
unsigned int _largeur;
unsigned int _hauteur;
public :
Rectangle() : _x(0) , _y(0) , _largeur(0) , _hauteur(0) , Forme("") {};
Rectangle(int x, int y, int largeur, int hauteur, string nom): _x(x) , _y(y) , _largeur(largeur) , _hauteur(hauteur) , Forme(nom) {}
Rectangle(const Rectangle& rectangle) : Forme(""){/*nothing wroten yet */};
virtual ~Rectangle() {}


virtual string toString() const {return "test";}
};

main.cpp :

Rectangle* r = new Rectangle(0,0,5,5,"test");

但是当我编译这段代码时,我得到了这个错误:

main.cpp | error: cannot allocate an object of abstract type 'Rectangle'

有人能解释一下为什么会出现这个错误吗?我不知道为什么会出现这个错误,因为 toString() 是在 Rectangle.h 中定义的,我没有在 Rectangle.cpp 和 Forme.cpp 中写任何东西。

谢谢。

(对不起,我的英语水平不好,我是法国人)

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com