Namespaces and types have members. The members of an entity are generally available through the use of a qualified name that starts with a reference to the entity, followed by a ".
" token, followed by the name of the member.
Members of a type are either declared in the type or inherited from the base class of the type. When a type inherits from a base class, all members of the base class, except constructors and destructors, become members of the derived type. The declared accessibility of a base class member does not control whether the member is inherited—inheritance extends to any member that isn’t a constructor or destructor. However, an inherited member may not be accessible in a derived type, either because of its declared accessibility (§3.3) or because it is hidden by a declaration in the type itself (§3.5.1.2).