Files
XCSDD/docs/api/resources/resourcehandle/swap.md

31 lines
747 B
Markdown
Raw Normal View History

# ResourceHandle::Swap
```cpp
void Swap(ResourceHandle& other)
```
交换两个句柄持有的资源指针。使用 `std::swap` 交换内部指针,不会改变任何引用计数。此操作常用于在不影响引用计数的情况下安全地交换两个句柄的内容。
**参数:**
- `other` - 要交换的另一个 ResourceHandle 引用
**返回:** 无
**复杂度:** O(1)
**示例:**
```cpp
ResourceHandle<Texture> tex1 = ResourceManager::Get().Load<Texture>("a.png");
ResourceHandle<Texture> tex2 = ResourceManager::Get().Load<Texture>("b.png");
// 交换后 tex1 持有 b.pngtex2 持有 a.png
tex1.Swap(tex2);
// 引用计数不变
```
## 相关文档
- [ResourceHandle 总览](resourcehandle.md) - 返回类总览