c++ - 当我们不知道哪些类是时如何复制派生类?
问题描述
假设我们有这些类:
class BaseClass;//im an abstract base class!
class Derived1 : public BaseClass;
class Derived2 : public BaseClass;
两个类都继承自BaseClass
,然后我们有一个指向 BaseClass 的指针向量
std::vector<BaseClass*> classes;
所以现在想象我想将向量实际复制它的元素复制到classes_copy
. 所以我不希望 的指针指向classes_copy
与classes
. 我想创建(new
用于分配,稍后我将释放它们)每个人的新版本。我们这里有一个问题:我们不知道指针是否指向BaseClass
或Derived1
类Derived2
。那么,这可能吗?如果没有,该怎么办?有什么建议么?
解决方案
推荐阅读
- python - 通过拆分文本在数据框中搜索
- google-analytics - 以网站形式传递 Google Analytics Client ID
- bash - 变量扩展包括别名定义中的空格
- java - 存储应用程序大小/位置偏好?
- python - 如何使用 openCV 在 Python 中提高视频播放速度
- css - SVG 项目符号点的自定义颜色
- javascript - 如果另一个元素有焦点,如何保持突出显示的文本?
- javascript - 为什么我的图片在 Github 页面上不起作用?
- google-apps-script - 有没有办法从谷歌表中搜索和提取应用程序脚本
- python - 如何在顶层窗口的 tkinter 上添加图片背景?