#include
<
iostream
>
using
namespace
std;
class
IntClass
...
{
public:
typedef int subType;
}
;
template
<
typename T
>
class
Base
...
{
public:
//typename 修饰,subType 视为一个型别
//如果不用,subType 视为一个值
typename T::subType a;
void Print()
...{
cout <<a <<endl;
}
}
;
int
main()
...
{
Base<IntClass> a;
a.a = 1;
a.Print();
return 0;
}
本文通过一个C++模板类实例介绍了如何使用typename关键字来声明类型别名,并展示了如何在一个模板类中引用另一个类定义的类型。通过具体代码演示了从定义类型别名到在模板类中使用这一特性的全过程。
207

被折叠的 条评论
为什么被折叠?



