假设有一个Items 向量
vector<Item*> items; //{item1, item2, item3}
Run Code Online (Sandbox Code Playgroud)
然后,在代码的其他部分,
items[1]->suicide();
Run Code Online (Sandbox Code Playgroud)
其中suicide函数为:
void Item::suicide()
{
delete this;
}
Run Code Online (Sandbox Code Playgroud)
什么是items矢量大小以及它现在的排列方式?这是好做呢?
编辑(我可以问一个额外的问题吗?):如果输出的所需排列是{item1, item3},大小是2,并且没有悬空指针,如何以自毁方式(从它item2自身)进行?
编辑2:谢谢你的所有答案!真棒.所以我最终决定并找到了从对象外部做到这一点的方法,因为这是一种不好的做法而且不必要地复杂化
请帮忙,
我找不到关于这个不是语言特定而不依赖于库的详细解释,因为我想出于某种原因自己控制数学.
如何使用鼠标创建轨道摄像机控制,例如Google SketchUp中的中间单击拖动?
*在Google SketchUp中,通过拖动鼠标,摄像机可以在平面中心(不总是0,0,0)上绕圆形轨道移动虚拟物体.它可以水平,垂直,甚至对角地沿所有方向运行.