在 C++11 中,您可以通过执行类似的操作来创建“类型别名”
template <typename T>
using stringpair = std::pair<std::string, T>;
但这与您期望的模板 typedef 的外观有所不同:
template <typename T>
typedef std::pair<std::string, T> stringpair;
所以这就提出了一个问题——为什么他们需要提出一种新的语法?是什么不适用于旧typedef
语法?
我意识到最后一点不能编译,但为什么不能编译?