Files
XCEngine/docs/api/resources/dependencygraph/topologicalsort.md

29 lines
732 B
Markdown
Raw Normal View History

# ResourceDependencyGraph::TopologicalSort
```cpp
Containers::Array<ResourceGUID> TopologicalSort() const
```
拓扑排序。按依赖顺序返回所有节点,确保被依赖的资源排在依赖者之前。用于确定正确的加载和卸载顺序。
**参数:** 无
**返回:** 按依赖顺序排序的 GUID 数组
**复杂度:** O(n + e)n 为节点数e 为边数
**示例:**
```cpp
auto loadOrder = graph.TopologicalSort();
// loadOrder[0] 是最底层依赖(如 Texture
// loadOrder[last] 是最顶层资源(如 Material
for (const auto& guid : loadOrder) {
ResourceManager::Get().Load(guid);
}
```
## 相关文档
- [ResourceDependencyGraph 总览](dependencygraph.md) - 返回类总览