Objects of different classes in a single vector?

前端 未结 7 2194
情书的邮戳
情书的邮戳 2020-12-09 22:58

In my code, I have a set of objects:

class Sphere { ...
class Plane { ...
...

And I need to use a collection of them (they will all have di

7条回答
  •  醉梦人生
    2020-12-09 23:44

    Sphere and Plane would need a common base type, or your vector would need to be composed of void*'s.

    Common base type (better):

    class Shape { ... };
    class Sphere : public Shape { ... };
    class Plane : public Shape { ... };
    
    std::vector shapes;
    

    or void*'s (not great):

    std::vector shapes;
    

提交回复
热议问题