美文网首页
★08.关于成员模板

★08.关于成员模板

作者: iDragonfly | 来源:发表于2017-06-30 22:17 被阅读0次

定义

template <typename T>
class A {
public:
    // 成员函数模板---------定义置于类内
    template <typename F>
    F fun1(T t, F f) {
        return F();
    }

    // 成员函数模板---------定义置于类外
    template <typename F>
    F fun2(T t, F f);
};

// 成员函数模板的定义
template <typename T>
template <typename F>
F A::fun2(T t, F f) {
    return F();
}

特化

template <typename T>
class A {
public:
    // 成员函数模板---------定义置于类内
    template <typename F>
    F fun(T t, F f) {
        return F();
    }

    // 成员函数模板特化---------不可以将定义置于类外
    template <int>
    int fun(T t, int f) {
        return 0;
    }
};

// 无法在类外定义成员函数模板的特化
//template <typename T>
//template <>
//int A::fun(T t, int f) {
//    return 0;
//}

注意事项

  • 成员模板不能是虚函数。

相关文章

  • ★08.关于成员模板

    定义 特化 注意事项 成员模板不能是虚函数。

  • 14/12

    成员模板:模板类中成员变量是模板类对象(1),模板类中函数是模板函数(2)

  • 模板与泛型 —— using 定义模板别名

    一、类的成员函数模板 二、using 定义模板别名 一、类的成员函数模板 普通类和模板类,其成员函数都可以是模板函...

  • C++ 中的模板

    类模板 函数模板 成员模板(member template) 成员模板其实就是一个类里面使用了一个模板函数。使用模...

  • 第二十讲到第二十二讲

    第二十,二十一讲 类模板,函数模板之前讲了 第二十二讲 成员模板 模板分为3种,类模板,函数模板,成员模板,等会做下总结

  • C++成员模板作为构造函数(Boolan)

    成员模板就是模板类内嵌套不同参数的模板函数,形如: 之前我看视频说成员模板常常用来作为构造函数,让模板类型为子类的...

  • 【C++ Templates(2)】类模板

    类模板示例 使用类模板 模板实参可以是任何类型 成员函数只有被调用到时才实例化 如果类模板有static数据成员,...

  • 02 类模板

    类模板示例 使用类模板 模板实参可以是任何类型 成员函数只有被调用到时才实例化 如果类模板有static数据成员,...

  • 模板与泛型 —— 模板模板参数

    一、模板模板参数 一、模板模板参数 考虑在类模板中,有成员变量 : vector myt; vector 实...

  • 模板

    通常有两种形式:函数模板和类模板;函数模板针对仅参数类型不同的函数;类模板针对仅数据成员和成员函数类型不同的类。 ...

网友评论

      本文标题:★08.关于成员模板

      本文链接:https://www.haomeiwen.com/subject/bdoicxtx.html