![]() |
1
0
可能的解决方案: 在您的应用程序中,您可以使用一个数组,其元素是您的用户数据值,其索引与在中创建实体时返回的基础值相匹配 PlayRho .
例如,对于任何
但如果你想避免处理像内存泄漏这样的头痛问题,
这样做的一些优点:
缺点:
背景/说明:
虽然PlayRho物理引擎最初是Box2D物理引擎的一个分支,但PlayRho已经远离了
引用语义
(指针)和朝向
值语义
(值)。因此,指针被替换,“用户数据”被彻底删除,取而代之的是像这种可能的解决方案这样的替代方案。此外,随着向值语义的转变,创建主体的概念从从从世界中获取指向新主体的指针转变为从世界中基本上获取指向新实体的整数索引。该索引充当世界中新实体的标识符,基本上是一个从0开始从世界递增的计数器,每次创建新实体时都会递增。这意味着您可以使用底层主体ID值作为存储用户数据的元素的索引,从数组中进行O(1)次查找。使用
|
![]() |
AstralHex · 矩阵乘法代码工作不正常 5 月前 |
![]() |
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 6 月前 |
![]() |
Die4Toast · 递归调用成员箭头运算符-> 6 月前 |
![]() |
Anka Hanım · 关于结构和动态数组地址的问题 6 月前 |