<分区>
在我的项目中,我使用 boost::asio
进行网络和线程管理。我想使用现代 C++ 的一些特性,例如共享指针。
有两个选择:boost::shared_ptr
,因为我已经在使用 Boost,以及 std::shared_ptr
,因为我正在使用 C++11编译器。据我了解,它们基本上是等价的,但是它们彼此不兼容。
我读到我应该更喜欢标准库组件而不是 Boost,而不是毫无意义地使用外部依赖项。然而,我仍然会使用 Boost(至少在他们决定将 ASIO 集成到标准库中之前),所以我仍然需要这种依赖性。
共享指针只是一个例子,这个问题适用于标准库从Boost接手的所有特性,比如function
, bind
, thread
等
鉴于我的情况,哪个是该功能的首选实现?在使用其他一些 Boost 或标准库组件时,是否有任何关于选择的问题,我需要特别使用 Boost 或标准库版本?