具有不合格名称的namelookup:C ++ 0x草稿n3290

问题描述

|| ISO C ++ Draft n3290的几点:3.4.0第二点   在查找表达式的范围内,将“在表达式的上下文中查找”的名称查找为不合格的名称。 有人可以举一个例子来解释这个说法吗?     

解决方法

        它说将搜索包含表达式的作用域的名称。即
namespace foo { 
  struct bar {
    void foobar() {
      do_something();
    }
  };
}
如果您有此代码,则将在
foobar
bar
foo
范围和全局范围内(而不是在其他名称空间,结构或函数范围内)搜索名称
do_something