gpt4 book ai didi

c++ - 为什么 Boost.Hana 使用宏来打开/关闭命名空间?

转载 作者:行者123 更新时间:2023-12-04 16:54:05 25 4
gpt4 key购买 nike

使用两个宏打开和关闭 namespace 的众多示例之一分别在/usr/include/boost/hana/transform.hpp :

BOOST_HANA_NAMESPACE_BEGIN
// stuff
BOOST_HANA_NAMESPACE_END
这些宏在 /usr/include/boost/hana/config.hpp 中是这样定义的:
#define BOOST_HANA_NAMESPACE_BEGIN namespace boost { namespace hana {

#define BOOST_HANA_NAMESPACE_END }}
这样做有什么好处?
(考虑到至少有一个缺点:它使得从 namespace s 的开始到结束来回跳跃变得更加困难。)

最佳答案

这最初是为了与使用内联命名空间的前向兼容,但这从未变得相关。我重开了https://github.com/boostorg/hana/issues/288并将其更改为正常的命名空间声明。

关于c++ - 为什么 Boost.Hana 使用宏来打开/关闭命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65741227/

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