gpt4 book ai didi

c++ unordered_set with shared_ptr 搜索原始指针

转载 作者:太空宇宙 更新时间:2023-11-04 14:53:26 34 4
gpt4 key购买 nike

我有一个以 shared_ptrs 作为键的 unordered_set。这在 99% 的情况下工作正常,但在相同的情况下,我需要从类内部搜索集合,我想避免继承 enable_shared_from_this,正因为如此。

我可以/如何通过原始指针搜索 unordered_set 的 shared_ptr。

最佳答案

散列 shared_ptr 散列 get() 并比较 shared_ptr 比较 get(),所以让我们使用别名构造函数创建一个非拥有的 shared_ptr:

std::shared_ptr<T> key(std::shared_ptr<T>(),
this /* or whatever pointer you want to search for */);

然后用它搜索 unordered_set

与使用空删除器相比,这更便宜,因为它不分配控制 block 。

关于c++ unordered_set with shared_ptr 搜索原始指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37233644/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com