如何将现有模板 class 部分特化为新类型?

How can I partially specialize a existing template class into a new type?

----重要提示:这不是部分模板专业化的解决方案,而是我在不知情的情况下寻找类型别名。抱歉造成混淆-----

我想做什么

我想将 boost::unordered_multimap 专门化为基本上只需要将要存储的数据,因此使密钥永久成为 boost::uuids::uuid。

当前尝试

template<class t>
boost::unordered_multimap<boost::uuids::uuid, t, boost::hash<boost::uuids::uuid>> unorderedUUIDMultMap;'

    Here is the usage:
        unorderedUUIDMultMap<int> uuidMultMap; //Should create a mutlimap storing ints.

这里是错误:

main.cpp|24|error: expected ';' before 'uuidMultMap'|

我也试过在模板前使用 "typedef",但也没有成功。

如何正确执行这个简单的快捷方式?

你想要的不是偏特化,而是模板类型别名:

template <typename T> using my_mmap = boost::unordered_multimap<boost::uuids::uuid, T, boost::hash<boost::uuids::uuid>>;