Type alias (dal C++11)
Da cppreference.com.
![]() | Questa pagina è stata tradotta in modo automatico dalla versione in ineglese della wiki usando Google Translate. La traduzione potrebbe contenere errori e termini strani. Muovi il puntatore sopra al testo per vedere la versione originale. Puoi aiutarci a correggere gli gli errori. Per ulteriori istruzioni clicca qui. |
Alias tipo sono simili a typedef, tuttavia, hanno il vantaggio di lavorare con modelli.
Original:
Type aliases are similar to typedef, 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.
[modifica]Sintassi
usingidentifier=type_name; | |||||||||
[modifica]Esempi
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_iftemplate<class Condition >using EnableIf = Invoke<std::enable_if<Condition::value>>; template<typename T, typename= EnableIf<std::is_polymorphic<T>>>int f(T t);