C++模版函数

    技术2025-05-30  16

    C++模版函数 定义方式: template<typename 数据类型参数标识符> <返回类型><函数名>(参数表)

    {

    函数体

    }

    知识点: template是 定义模板函数的关键字;template后面的尖括号不能省略;typename(或class)是声明数据类型参数标识符的关键字,用以说明它后面的标 识符是数据类型标识符。这样,在以后定义的这个函数中,凡希望根据实参数据类型来确定数据类型的变量,都可以用数据类型参数标识符来说明,从而使这个变量 可以适应不同的数据类型。 例如: template< typename T> T fuc(T x, int y) { T x; //…… }

    如果主调函数中有以下语句:

    double d;

    int a;

    fuc(d,a);

    则系统将用实参d的数据类型double去代替函数模板中的T生成函数:

    double fuc(double x,int y) { double x; //…… }

    注意: 1.模版函数的声明,也需要带有template< typename t> 2.关键字typename也可以使用关键字class,这时数据类型参数标识符就可以使用所有的C++数据类型 3.在template语句与函数模板定义语句<返回类型>之间不允许有别的语句。如下面的声明是错误的: template< class T> int i; T min(T x,T y) { 函数体 }

    Processed: 0.013, SQL: 9