Sto provando a digitare sia unordered_map o std :: map a seconda che ci siano librerie TR1 disponibili. Ma non voglio specificare i parametri del modello. Da quanto ho letto finora, i typedef'ing template senza argomenti non sono possibili finché non è disponibile lo standard ufficiale C++ 0x. Qualcuno sa quindi una soluzione elegante per questo?Typedef una classe template senza specificare i parametri del modello
#ifdef _TR1
#include <unordered_map>
typedef std::tr1::unordered_map MyMap; //error C2976: too few template arguments
#else
#include <map>
typedef std::map MyMap; //error C2976: too few template arguments
#endif
Vedi questa domanda molto vicina: http://stackoverflow.com/questions/544842/c-typedef-ing-stl e le risposte fornite. I typedef dei template non sono validi Comandi C++ –
Benoit - Grazie, è esattamente quello che stavo cercando –
Domanda molto simile: http://stackoverflow.com/questions/6907194/how-to-typedef-a-template-class Ha un altro risposta che non è menzionata qui: "modello alias" in C++ 11 – Jayesh