Я пытаюсь ввести unordered_map или std::map в зависимости от того, доступны ли библиотеки TR1. Но я не хочу указывать параметры шаблона. Из того, что я читал до сих пор, шаблоны typedef'ing без аргументов невозможны, пока не будет доступен официальный стандарт С++ 0x. Так кто-нибудь знает элегантный обходной путь для этого?
#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