有什么区别:
namespace A
{
inline namespace B
{
...
}
...
}
...
和
namespace A
{
namespace B
{
...
}
using namespace B;
...
}
...
也就是说,内联命名空间和非内联命名空间之间有什么区别?在其封闭命名空间中放置了using指令?
答案 0 :(得分:0)
从C ++ 11 7.3.1p8转载:
- 时,在依赖于参数的查找中使用的关联命名空间
内联命名空间及其封闭命名空间都添加到了一组 每当其中一个是。
内联命名空间的每个成员随后都可以 显式实例化或显式专门化,就像它是封闭命名空间的成员一样。
通过显式限定查找封闭命名空间中的名称 包括using-directive引入的内联命名空间的成员,即使在封闭命名空间中有该名称的声明。