using keyword |
Looks up names in alternate classes or namespaces
|
block-decl := using-decl | using-directive
using-decl ::= using [typename] [::] nested-name :: unqualified-id ; |
using [::] unqualified-id ;
using-directive ::= using namespace [::] [nested-name ::] namespace-name ;
|
|
The using keyword starts a
using declaration or using
directive.
A using
declaration imports a name from another namespace into the current
namespace. It can also be used to introduce a name into a class
scope; this is most often used to promote the access level of an
inherited member or bring an inherited member into the derived class
for overload resolution.
A using directive
tells the compiler to search an additional namespace when looking up
unqualified names.
Example
namespace math {
const long double pi = 3.1415926535897932385L;
};
using math::pi;
long double tan(long double x = pi);
int main( )
{
using namespace std;
cout << "pi=" << math::pi << '\n';
}
See Also
class, declaration,
identifier, namespace, Chapter 2, Chapter 6
|