gpt4 book ai didi

c++ - c++中的 `std::list`和boost库 `boost::ptr_list`有什么区别吗?

转载 作者:行者123 更新时间:2023-11-30 04:46:56 27 4
gpt4 key购买 nike

STL 标准库提供的std::list和Boost库提供的boost::ptr_list有什么区别吗?

最佳答案

如果您查看 boost::ptr_list documentation ,它说:

A ptr_list<T> is a pointer container that uses an underlying std:list<void*> to store the pointers.

It should also be noted that boost:ptr_list like std::list own the object it contains. So ptr_list will call delete on the pointer at some point.

也就是说,界面非常相似:

  • ptr_list API有push_front(T*) , push_front(appropriate-smart-pointer-type<U> p)并且还继承自 ptr-sequence-adapter 以提供更多功能。

  • std::list<>提供了一个稍微更现代的界面,包括移动语义但在其他方面是相同的 - 参见 cppreference docs

关于c++ - c++中的 `std::list`和boost库 `boost::ptr_list`有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56436123/

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