我有这段代码:
#include <iostream>
#include <string>
#include <vector>
class MyAbstract
{
public:
std::string id;
virtual void doStuff() = 0;
virtual ~MyAbstract() {}
};
int main()
{
std::vector<MyAbstract> myList;
for(auto item : myList)
{
//DoSomething
}
}
但它没有用这个错误编译:
错误:无法分配抽象类型的对象&#39; MyAbstract&#39;
Visual Studio 2015错误:
无法实例化抽象类
以下是在线代码:http://cpp.sh/3etnq
我在这里想念的是什么?! 这有效:
for (auto it = myList.begin(); it != myList.end();)