Files
XCSDD/docs/api/core/smartptr/Ref.md

41 lines
845 B
Markdown
Raw Normal View History

# SmartPtr::Ref
```cpp
template<typename T>
using Ref = std::shared_ptr<T>;
```
共享引用智能指针类型别名。
**描述**
`Ref<T>``std::shared_ptr<T>` 的类型别名,提供共享所有权的智能指针。多个 `Ref` 可以指向同一个对象,通过引用计数管理生命周期。当最后一个 `Ref` 被销毁时,对象会被自动删除。
**模板参数:**
- `T` - 被托管对象的类型
**复杂度:** O(1)
**示例:**
```cpp
#include <XCEngine/Core/SmartPtr.h>
class MyClass {
public:
void DoSomething() { /* ... */ }
};
Core::Ref<MyClass> ref1 = Core::MakeRef<MyClass>();
Core::Ref<MyClass> ref2 = ref1; // 共享所有权
if (ref1) {
ref1->DoSomething();
}
```
## 相关文档
- [SmartPtr 总览](smartptr.md) - 返回类总览
- [MakeRef](MakeRef.md) - 创建 Ref 的工厂函数