Search⌘ K
AI Features

Dependent Names

Learn to identify and work with dependent names in C++ templates, understanding how the compiler resolves types, non-types, and template templates. This lesson explains the significance of typename and template keywords in template instantiation and name lookup, enhancing your template programming skills.

Dependent Names #

A dependent name is essentially a name that depends on a template parameter. A dependent name can be a type, a non-type, or a template-template parameter.

If a dependent name is used in a template declaration or template definition, the compiler has no idea whether this name refers to a type, a non-type, or a template parameter. In this case, the compiler assumes that the dependent name ...