【发布时间】:2017-10-10 12:43:07
【问题描述】:
在我的项目中,我使用boost::asio 进行网络和线程管理。我想使用现代 C++ 的一些特性,例如共享指针。
有两个选择:boost::shared_ptr,因为我已经在使用 Boost,std::shared_ptr,因为我正在使用 C++11 编译器。据我了解,它们基本上是等效的,但是它们彼此不兼容。
我读到我应该更喜欢标准库组件而不是 Boost,而不是毫无意义地使用外部依赖项。但是我仍然会使用 Boost(至少在他们决定将 ASIO 集成到标准库之前),所以我仍然需要这种依赖。
共享指针只是一个例子,这个问题适用于标准库从 Boost 接管的所有功能,例如function、bind、thread 等。
鉴于我的情况,该功能的首选实现是什么?在使用其他一些 Boost 或标准库组件时,我是否需要专门使用 Boost 或标准库版本?
【问题讨论】:
-
当您可以从标准库中获得相同的值时,使用 boost 替代方案的理由是什么?我什么都不知道
-
基于意见?也许我是一只教条主义的老猫,但反对我的观点是没有道理的。因此,答案是具体的。
-
如果一个关于使用标准的意见是一个标准意见,它不应该只是一个标准吗?