15.2 Qualified Names

A qualified name is an identifier that includes a namespace name, the namespace separator ::, and a component name. For example, one might have a function named posix::getpid(). Here, the namespace is posix and the function name within the namespace (the component) is getpid(). The namespace and component names are separated by a double-colon. Only one such separator is allowed in a qualified name.

NOTE: Unlike C++, the :: is not an operator. No spaces are allowed between the namespace name, the ::, and the component name.

You must use qualified names from one namespace to access variables and functions in another. This is especially important when using variable names to index the special SYMTAB array (see Built-in Variables That Convey Information), and when making indirect function calls (see Indirect Function Calls).