我有一个 vector 来保存项目符号类的对象。这是向 vector 结构添加项目符号的正确方法吗?
std::vector<Bullet> bullets;
Bullet newbullet(thisPlayer.x+PLAYERSPRITEWIDTH,(thisPlayer.y-(PLAYERSPRITEHEIGHT/2)));
bullets.push_back(newbullet);
我认为项目符号不会以这种方式添加。
最佳答案
这是将“Bullet”添加到 std::vector 的完全有效的方法。
确保您的 vector 是在函数范围之外定义的。否则 vector 会超出范围并被释放。
一些可能有助于您理解的链接:
http://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Mips/stack.html
http://en.wikipedia.org/wiki/Scope_(programming)
http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization
关于c++ - DirectX 中的 vector 处理项目符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3936038/