现在的位置: 首页 > 综合 > 正文

基础备忘:函数模板在数组中的使用

2012年12月24日 ⁄ 综合 ⁄ 共 460字 ⁄ 字号 评论关闭

函数模板在实际程序中应用比较广泛,这是由于它本身的特性所决定的:定义一个函数体后,可以多次调用进行实例化。

例子:

#include<iostream>
using namespace std;
template <typename T,int size>  //函数模板参数,包括类型参数T和数值参数size
int  find(T (&array)[size], T var)  //定义查找函数:在T型数组array中查找元素var 
{
     for(int i=0;i<size;i++)
     {
             if(var == array[i])
                return i+1;
             }
     return -1;
     }
     
int main()
{
    int a[5]={3,2,4,5,1};
    double b[6]={1.0,2.1,3.2,4.3,5.4,6.5};
    cout<<"整数1的位置:"<<find(a,1)<<endl;
    cout<<"浮点数4.3的位置: "<<find(b,4.3)<<endl;
    system("pause");
    }

输出:

需要注意的是,数组前使用了运算符&,这是取地址符,在实参中传递数组的首地址即可。

抱歉!评论已关闭.