• 即将更新编译原理,机器学习,JavaScript,HTML/CSS等文章,谢谢关注~
  • 由于算法限制,搜索时注意简化关键字,谢谢支持~
  • 网站不兼容IE5.0及以下,请使用主流浏览器访问.
  • C++函数模板与类模板(template)

    函数模板

    函数模板可以用来创建一个通用功能的函数,以支持多种不同形参,进一步简化重载函数的函数体设计。

    声明方法:

    template <typename  标识符>
    函数声明

    绝对值函数模板实例:

    编译器从调用abs()时实参的类型,推导出函数模板的类型参数。例如,对于调用表达式abs(n),由于实参n为int型,所以推导出模板中类型参数T为int。

    当类型参数的含义确定后,编译器将以函数模板为样板,生成一个函数:
    int abs(int x)
    {    return x<0?-x:x;  }

    类模板

    使用类模板使用户可以为类声明一种模式,使得类中的某些数据成员、某些成员函数的参数、某些成员函数的返回值,能取任意类型(包括基本类型的和用户自定义类型)

    template <模板参数表>
    class 类名
    {类成员声明}

    如果需要在类模板以外定义其成员函数,则要采用以下的形式:

    template <模板参数表>
    类型名 类名<T>::函数名(参数表)

    实例:

     

    读者评分
    [评分人数: 2 平均分: 4.5]

    评论

    OmegaXYZ