为了向后兼容"C模板",C++中是否存在typename关键字?

ELL*_*BLE 19 c c++ standards templates

我正在学习C++课程,而我的老师在传递中提到typename关键字存在于C++中(而不是class在模板声明中使用关键字),以便向后兼容"C模板".

这引起了我的注意.我从来没有见过或听说过C++的模板之类的东西(除了,也许是预处理器......而且根本不是同一个东西)在ANSI C中.所以,我是否错过了某个地方的巨大东西,或者这是一个非常深奥的东西延伸gcc或者什么,或者我的老师离开基地?

Bri*_*ndy 27

我认为你的老师不在基地.

请参阅Stan Lippman的帖子:为什么C++支持类型参数的类和类型名称,这是C++支持这两者的真正原因.


Joh*_*all 6

也许你的老师所针对的短语是"......为了与C 类型向后兼容",即,template<class T>TC风格的内置类型(如charint其他人有)时,认识到误导的问题.说过. 但那不是一堂课!:-)

不久之后,一些GCC人员建议将模板机制提供给C编译器将是实现C99的好方法<tgmath.h>,但这似乎没有任何结果.