在将派生对象添加到(抽象)基指针数组中时,我遇到了问题。为了简化我想做的事情,这里有一个例子:
Base** baseArray = new Base*[3];
baseArray[0] = new derived1(param,param);
baseArray[1] = new derived2(param,param);
baseArray[2] = new derived3(param,param);
现在,我还没有让我的虚拟 Print() 能够打印出 baseArray 元素,但是使用 vs2012 调试器我只能在 baseArray 中看到 baseArray[0]。另外两个就消失了。
但我想我的主要问题是,上面的例子应该有效吗?如果是的话,那么询问可能发生的事情是否太过分了?如果没有,有没有(更好)的方法?
编辑:谢谢大家!
最佳答案
您的代码是正确的。给定一个动态分配的数组,Visual Studio 调试器将仅显示第一个元素。 This答案可能有帮助。
关于c++ - 将派生对象添加到(抽象)基指针数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29575053/