我刚刚开始学习C++中的指针,我不太确定何时使用指针,何时使用实际对象。
例如,在我的一项作业中,我们必须构造一个 gPolyline 类,其中每个点都由一个 gVector 定义。现在,我的 gPolyline 类变量如下所示:
private:
vector<gVector3*> points;
如果我有矢量 点相反,这会有什么不同呢?另外,是否有关于何时使用指针的一般经验法则?提前致谢!
一般的经验法则是在需要时使用指针,在可以时使用值或引用。
如果你使用vector<gVector3>
插入元素将复制这些元素,并且这些元素将不再与您插入的项目连接。当您存储指针时,向量仅引用您插入的对象。
因此,如果您希望多个向量共享相同的元素,以便元素的更改反映在所有向量中,则需要向量包含指针。如果您不需要此类功能,那么存储值通常会更好,例如,它可以让您不必担心何时删除所有这些指向的对象。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)