user751747
user751747

Reputation: 1093

namelookup with Unqualified name : C++0x draft n3290

A point from the ISO C++ Draft n3290 : 3.4.0 2nd point

A name “looked up in the context of an expression” is looked up as an unqualified name in the scope where the expression is found.

Would someone please explain this statement with an example?

Upvotes: 5

Views: 237

Answers (1)

Fabio Fracassi
Fabio Fracassi

Reputation: 3890

It says that the scope which contains the expression will be searched for the name. i.e.

namespace foo { 
  struct bar {
    void foobar() {
      do_something();
    }
  };
}

if you have this code the name do_something will be searched in the scope of foobar, bar, foo and in the global scope (and not in other namespaces, structs or function scopes)

Upvotes: 6

Related Questions