(Based in part on https://ericniebler.github.io/meta/index.html, designed to be a printable quick reference.)
Using the C++14 standard library.
- Trait:
std::add_pointer
- is a "template" (has template parameters) - not a type unless evaluated.
- Evaluate:
typename std::add_pointer<int>::type
(akatypepack::t_<std::add_pointer<int>>
) isint *
- Alias (alias template):
std::add_pointer_t
- is a "template" (has template parameters) - not a type unless evaluated.
- application:
std::add_pointer_t
isint *