Chinaunix首页 | 论坛 | 博客
  • 博客访问: 545742
  • 博文数量: 17
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 2325
  • 用 户 组: 普通用户
  • 注册时间: 2004-10-26 16:15
文章分类

全部博文(17)

文章存档

2008年(17)

我的朋友

分类: C/C++

2008-03-21 18:05:53

 

非类型(Non type)的类模板参数可以看作是类的参数化的一种形式。

template
class Stack {

private:
    T elems[MAXSIZE];

在实例化时,MAXSIZE必须是常量,不能是变量。

 

函数模板实例化作为参数时要注意,函数模板是一组重载函数集合(即使这个集合只有一个元素),而重载函数的集合不能作为模板参数进行推导。必须将其转换为正确的函数类型。

 

 

非类型模板参数有一些限制。

浮点型和类对象,不能作为非类型模板参数。原因是?因为String常量是internal linkage的。

通常非类型模板参数是整型常量或是指向external linkage对象的指针。这又是为什么?

阅读(1625) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~