c++继承问题,如何在调用基类函数时根据子类而动态分配存储空间?

我现在有几个类,Layer,Feature,Layer类有addFeature函数,存到private成员一个vector中,还有类Point,Line,Area均继承自Feature,但当一个Point对象调用addFeature()函数时,无法添加Point的成员,只能添加继承自Feature的成员;
我觉得应该是addFeature函数没有为子类开辟出存储空间,所以无法存放子类对象,请问如何解决,才能让addFeature函数根据类型来动态分配存储空间呢?

分配什么空间?
你的Point ,line,Area三个类是不是都继承Feature
可以把Feature的成员定义成虚成员virtue
在子类中都在定义一下该成员就可以了。