是否有可能/建议在结构中存储一个向量?C++

Sat*_*own 9 c++ struct vector

我总是把结构想象成一个固定大小的对象,虽然似乎没有任何明显的编译器错误,但我想知道这样做是否通常是好的做法.将结构更改为类更可取,还是结构也可以更好?

代码,只是因为人们变得挑剔:

struct Sprite
{
    float x;
    float y;
    std::vector<Sprite> sprite;
}
Run Code Online (Sandbox Code Playgroud)

我正在做的事情的本质是让一个类的子类与父类相同.当父母去世时,孩子们也会这样做.

Dav*_*vid 15

一个std::vector具有特定的已知大小,并包含有一个特定的已知大小的任何类或结构.std::vector在堆上分配内存以充当可变大小的数组并存储指向所述内存的指针.结构和类之间的唯一区别是结构默认是公共的,而类默认是私有的.


das*_*ght 7

之间的差异struct,并class有成员可见的事:最显着的区别是struct的成员默认为公用,同时又有struct的继承默认情况下公开; 默认情况下,class成员和class继承都是私有的.除此之外,没有区别:你总是可以编写代码struct来生成与编写代码相同的代码class,反之亦然.