更新时间:2023-11-11 21:43:04
问题是模板在两遍处理(根据标准,VS否则)。在第一遍,在类型替换之前,不依赖于模板参数的一切都被查找和检查。然后,一旦类型被替换,则依赖名称在第二遍中被解析。
现在,在第一遍没有什么表明下一个依赖于模板参数,因此它需要在类型替换之前解决 。现在,因为基本类型是基于当前模板的模板参数的模板,编译器不能查看它(它可能专用于某些类型,并且不知道什么类型 T 我们正在实例化模板,我们不知道使用哪个专门化,即 T 的基础 ,我们在知道
下一个
T
C ++中的通用访问者基类模板 - 重载问题
用于显式特化模板类中的模板函数的 C++ 语法?
从C ++ 11可变参数模板参数中消除重复的条目
C ++ 11中的可变参数模板和多重继承
C ++模板中的const引用
通过模板检查c ++ 11中是否存在函数(不是方法)
多个类型名称的部分模板专门化
为什么C ++要求我在初始化列表中重复基类的模板参数?
什么是C ++中的运算符T *(其中T是模板参数)?
为什么不允许模板专门化设置在不同的命名空间中?