Ich habe gerade mit der Programmierung in C++ und ich verstehe nicht, warum Xcode sagt, dass "Variable Typ 'Rect' ist eine abstrakte Klasse" .. Sie können einen Teil meines Codes hier finden : Vielen Dank im Voraus für Ihre Hilfe,Erstellen Sie ein Objekt aus einer Klasse in C++
main(){
Rect r1(10,5,"R1");
return 0;
}
class Rect : public Figure
{
public:
Rect(int l, int h,std::string Label) : Figure(l), _h(h),_Label(Label) {};
~Rect(){};
std:: vector<std::string> toString() const;
protected:
int _h;
int _l;
std::string _Label;
};
class Figure
{
public:
Figure(int l):_l(l){}
virtual std::vector<std::string> toStrings() const =0;
virtual ~Figure();
protected:
int _l;
};
Dies ist Standardfehler. Dies bedeutet, dass einige reine virtuelle Methoden nicht für die Klasse implementiert wurden, für die Sie ein Objekt erstellen. In diesem Fall muss Rect 'std :: vector toStrings() const' implementieren. –
'toString()' vs 'toStrings()' –