gpt4 book ai didi

C++在尝试覆盖方法时无法实例化抽象类

转载 作者:行者123 更新时间:2023-11-28 05:52:44 24 4
gpt4 key购买 nike

<分区>

我有名为 Worker 的基类和两个派生类 Merchant 和 Baker。

class Worker
{
private:
string _name;
public:
Worker(string, string, string, int);
~Worker();
virtual string atributes() = 0;
};

class Merchant : public Worker
{
private:
string _skillLevel;
public:
Merchant(string, string);
string atributes() override;
};

class Baker : public Worker
{
private:
string yearsOfExperiance;
public:
Baker(string, string);
string atributes() override;
};

我已经创建列表 list<Workers> Workers我正在添加像这样的 Merchant 和 Baker 对象:

void addToList(string name, string atributes, list<Worker>& Worker)
{
if (name == "John")
{
Baker kk = Baker(name, atributes);
Workers.push_front(kk);
}
else if (profesja == "Barack")
{
Merchant pp = merchant(name, atributes);
Workers.push_front(pp);
}
}

问题是当我尝试编译代码时出现 C2259 错误。它说

'Worker': cannot instantiate absract class

你能告诉我如何解决这个问题吗?

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