在c ++中这是不合格的查找吗?

时间:2018-01-20 17:50:47

标签: c++ lookup

    #include <iostream>
    namespace X
    {
        int k  = 8;
    }
    int main()
    {
        using namespace X;
        int  k = 0;


        std::cout << k;


        return 0;
    }

我正在努力理解限定和非限定查找之间的区别,以及它们如何处理使用命名空间;短语

现在,我想澄清一下?这里k会导致合格的查找吗?

1 个答案:

答案 0 :(得分:3)

unqualified name lookup

  

对于不合格的名称,这是一个不显示的名称   右侧的范围解析运算符:: ,名称查找检查   范围如下所述,直到它找到至少一个声明   任何类型,此时查找停止,没有其他范围   检查。

因为k未出现在范围解析运算符的右侧。