#include < iostream >
using namespace std;
template < typename T1, typename T2 >  //定义函数模板，T1、T2是两个类型参数
void sum( const T1 x, T2 *y )  //接受类型为T1的符号常量，以及类型为T2的指针变量
{
    T1 sum = 0;
    for( int i=0; i< x; i++ )
    {
      sum += y[i];     //数组求和
    }
    cout<< " sum= "<<sum<<endl; //输出结果
}
int main( )
{
    int a = 4;          //普通整型变量
    double ary[] = {2.0, 4.0, 6.0, 8.0};   //双精度浮点型数组
    cout<<" /*数组求和*/ "<<endl;
    sum( a, ary );          //调用函数模板sum
    return 0;
