首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >内联命名空间与使用指令之间的C++11差异?

内联命名空间与使用指令之间的C++11差异?
EN

Stack Overflow用户
提问于 2013-07-20 04:30:24
回答 1查看 896关注 0票数 5

在以下方面有何区别:

代码语言:javascript
运行
复制
namespace A
{
    inline namespace B
    {
        ...
    }

    ...
}

...

代码语言:javascript
运行
复制
namespace A
{
    namespace B
    {
        ...
    }

    using namespace B;

    ...
}

...

也就是说,内联名称空间和非内联命名空间之间的区别是什么,并将使用指令放在其封闭的命名空间中?

EN

回答 1

Stack Overflow用户

发布于 2013-07-20 04:51:46

引用自C++11 7.3.1p8:

  • 内联名称空间及其包围名称空间都会添加到参数依赖查找中使用的一组关联命名空间中,只要其中一种名称空间存在。
  • 内联命名空间的每个成员随后都可以显式实例化或显式专门化,就好像它是封闭名称空间的成员一样。
  • 通过显式限定查找封闭名称空间中的名称时,将包含由are指令引入的内联名称空间的成员,即使在封闭名称空间中有该名称的声明。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17758659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档