我正在将我的项目迁移到 C++11,并且我正在尝试尽可能多地使用标准库。
在完成迁移之前,我需要一种快速的方法来在 boost 和 STL 实现之间shared_ptr
切换(进行基准测试、单元测试等)。
所以我为shared_ptr
这样定义了一个别名:
#ifdef _USE_BOOST_
template <class C>
using shared_ptr = boost::shared_ptr<C>
#else
template <class C>
using shared_ptr = std::shared_ptr<C>
#endif
现在我需要为make_shared
...做同样的事情但是如何?宏?一个包装?我真的不喜欢他们中的任何一个。有哪些替代方案?