c++--模板

模板是c++实现代码重用的一种有效机制,模板通过把类型定义为参数,提高了代码的可重用性。

1.函数模板

  • 在c++中,函数模版以template<class ElementTpye> 或者template<typename ElementTpye>的形式给出,ElementType为形式参数,模板的每个形式参数都要在函数参数列表中至少出现一次
int add(int a, int b)
{
    return a + b;
} 

double add2(double a, double b)
{
    return a + b;
}

       先看上面两个函数,作用都是为了实现两个数相加,但是参数和返回的类型不同,除此之外,函数实现部分并没用差别,因此我们可以采用函数模板来将两个函数抽象成一个函数;

#include <iostream>
using namespace std;

template<class ElementTpye>
ElementTpye add(ElementTpye a, ElementTpye b)
{
    return a + b;   
} 

int main()
{
    int a = 1, b = 2;
    double c = 2.0, d = 3.1;
    cout << add(a, b) << endl;     //输出3
    cout << add(c, d) << endl;     //输出5.1
    return 0;
}

       函数模板实例化时直接将函数add的形式参数替换为变量a和b的int类型。

发布了60 篇原创文章 · 获赞 7 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章