比如说你要定义一个由用户指定长度的数组类,因为数组的长度需要在编译的时候就需要确定,这个时候就需要非类型模板参数,来指定数组的长度,在实例化这个模板数组的时候把数组的长度传进去,因为这个长度跟类型是无关的,它只是一个unsigned int,所以要要用非类型参数。当然这只是一个例子,具体的应用还有很多。