如何解决如何在存储抽象基类引用的泛型上使用每个循环?
抱歉标题混乱。希望一个例子可以解决问题。我有一个名为 Renderable 的基类,如下所示:
class Renderable {
public:
virtual void render() = 0 ;
};
我计划遍历可渲染对象的派生类引用的 std::vector。像这样:
std::vector<Renderable&> allRenderables = //passed in somewhere;
for (Renderable& renderable : allRenderables) {
renderable.render();
}
我编译了,这就是我得到的:
错误 C2528::指向引用的指针非法
我尝试删除 & 但它告诉我 Renderable 是抽象的。另外,我认为这是一种糟糕的实现方式。
有人能告诉我我做错了什么吗?或者这是实现这一点的正确方法吗?
我先谢谢你!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。