Stu*_*erg 8 c++ boost c++11 inline-namespaces
C++ 11具有一个称为"内联命名空间"的功能,允许作者在链接时强制执行ABI兼容性,而不会篡改API.例如,来自@HowardHinnant的这些有用的答案解释了如何libc++使用内联命名空间:
我的问题是:boost是否使用了这个C++ 11功能?看起来有些提升开发者至少在考虑最终使用它.但那个线程很老了.它曾经发生过吗?如果是这样,是否适用于所有boost库,或仅适用于子集?
一些图书馆已经开始使用它,但不是全部.例如,这是在Boost.Log中:
//! NOTE: I've reformatted this to look cleaner.
#if !defined(BOOST_NO_CXX11_INLINE_NAMESPACES)
inline namespace BOOST_LOG_VERSION_NAMESPACE {}
[snip]
#endif
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
584 次 |
| 最近记录: |