开发者社区> 问答> 正文

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

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

展开
收起
a123456678 2016-03-04 17:30:17 2306 0
1 条回答
写回答
取消 提交回答
  • 你的Point ,line,Area三个类是不是都继承Feature
    可以把Feature的成员定义成虚成员virtue
    在子类中都在定义一下该成员就可以了。

    2019-07-17 18:52:37
    赞同 展开评论 打赏
问答分类:
C++
问答地址:
问答排行榜
最热
最新

相关电子书

更多
使用C++11开发PHP7扩展 立即下载
GPON Class C++ SFP O;T Transce 立即下载
GPON Class C++ SFP OLT Transce 立即下载