ide*_*n42 7 memory-management rust
当诸如Vecrun之类的类型时truncate,它们会调用ptr::drop_in_place向量的每个成员.
Vec
truncate
ptr::drop_in_place
事实证明这不是原始类型(如int,float等)的性能问题,因为drop调优已经过优化.
对于更多涉及的容器类型(我为自己编写的容器类型),迭代元素可能不是那么简单(并且可能并不总是被优化掉).
有没有办法检查类型是否具有丢弃特征,因此在这种情况下可以避免访问所有成员?
小智 5
std::intrinsics::needs_drop 仍然不稳定,但如果你可以处理,这是检查这个的最好方法.
std::intrinsics::needs_drop
归档时间:
9 年 前
查看次数:
378 次
最近记录: