用C++保存任何对象的数组?

Dan*_*nny 2 c++ arrays class object

有人可以告诉我并提供一个代码示例,说明是否可以在不使用c ++继承的情况下创建可以容纳任何类型对象的数组?我还没有编写任何代码,但是例如,如果我有两个类:RangedWeap和MeleeWeap,有没有办法将这些对象存储在同一个数组中而不使用继承?

Luc*_*ore 7

如果你想存储对象,没有.这样做的原因是数组将对象存储在连续的内存中,并且每个存储对象的大小是相同的.这不一定适用于不同类型.

有一种丑陋的方式存储void*,但这将存储指针,而不是对象.此外,它将毫无用处,因为所有类型信息都会丢失.你怎么能在世界上确定void*要点(假设你没有基类)?