在 C++11 中,您可以通过执行类似的操作来创建“类型别名”
template <typename T>
using stringpair = std::pair<std::string, T>;
但这与您期望的模板 typedef 的外观有所不同:
template <typename T>
typedef std::pair<std::string, T> stringpair;
所以这就提出了一个问题——为什么他们需要想出一种新的语法?旧的不起作用的是什么?typedef
syntax?
我意识到最后一点无法编译,但为什么不能编译呢?
我只提及 stroustrup 本人:
http://www.stroustrup.com/C++11FAQ.html#template-alias http://www.stroustrup.com/C++11FAQ.html#template-alias
关键字 using 用于获取线性符号“名称后跟
它指的是什么。”我们尝试使用传统的、复杂的
typedef 解决方案,但从未设法获得完整且连贯的
解决方案,直到我们选择了一种不太晦涩的语法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)