Files
XCEngine/docs/api/XCEngine/Components/GameObject/Destroy.md

33 lines
722 B
Markdown

# GameObject::Destroy
销毁当前对象。
```cpp
void Destroy();
```
## 行为说明
当前实现有两条分支:
- 如果对象属于某个 `Scene`
- 调用 `m_scene->DestroyGameObject(this)`
- 如果对象不属于场景
- 只调用 `OnDestroy()`
## 重要边界
- 对场景托管对象来说,真正的移除、子树递归、事件分发和 registry 清理都在 `Scene::DestroyGameObject()` 里完成
- 对独立对象来说,这个接口**不会释放对象自身内存**
- 析构函数和 `Destroy()` 不是同一个语义层级
## 返回值
- 无。
## 相关文档
- [OnDestroy](OnDestroy.md)
- [Scene::DestroyGameObject](../../Scene/Scene/DestroyGameObject.md)
- [GameObject](GameObject.md)