Type alias (seit C++11)
Aus cppreference.com
<metanoindex/>
Typ-Aliasnamen ähneln typedefs, haben jedoch den Vorteil, mit Schablonen .
Original:
Type aliases are similar to typedefs, however, have the advantage of working with templates.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Syntax
Beispiele
using flags = std::ios_base::fmtflags;
using func = void (*) (int,int);
// typedef std::ios_base::fmtflags flags;
// typedef void (*func)(int, int);
template<class T> using ptr = T*;
ptr<int> x;
template<class T> using vec = std::vector<T>;
vec<float> w;
// type alias used to hide some template parameter
template<class CharT> using mystring = std::basic_string<CharT,std::char_traits<CharT>>;
mystring<char> str;
// type alias used to simplify the syntax of std::enable_if
template< class Condition >
using EnableIf = Invoke<std::enable_if<Condition::value>>;
template <typename T, typename = EnableIf<std::is_polymorphic<T>>>
int f(T t);
