Files
XCEngine/docs/api/core/refcounted/GetRefCount.md

52 lines
988 B
Markdown
Raw Normal View History

# RefCounted::GetRefCount
```cpp
uint32_t GetRefCount() const;
```
获取当前引用计数。
**描述**
返回当前的引用计数值。由于使用 `std::atomic` 实现,因此是线程安全的。
**返回:** `uint32_t` - 当前引用计数
2026-03-20 02:35:07 +08:00
**线程安全:** ✅
**复杂度:** O(1)
**示例:**
```cpp
#include <XCEngine/Core/RefCounted.h>
2026-03-20 02:35:07 +08:00
#include <cstdio>
2026-03-20 02:35:07 +08:00
class MyObject : public XCEngine::Core::RefCounted {
public:
void Debug() {
printf("RefCount: %u\n", GetRefCount());
}
};
2026-03-20 02:35:07 +08:00
int main() {
MyObject* obj = new MyObject();
printf("After create: %u\n", obj->GetRefCount());
obj->AddRef();
printf("After AddRef: %u\n", obj->GetRefCount());
obj->Release();
printf("After Release: %u\n", obj->GetRefCount());
obj->Release();
return 0;
}
```
## 相关文档
- [RefCounted 总览](refcounted.md) - 返回类总览
- [AddRef](AddRef.md) - 增加引用计数
- [Release](Release.md) - 减少引用计数