C++模板类,基于typename改变类方法的行为

用户62089

我有一个模板类,我试图根据类中的类型名专门研究其方法。代码的骨架如下:

template <typename C> class Instance {
  protected:
    C data;
  public:
    void populateData();
    /* want to change the behavior of populateData() depending on C */
};

我如何实现上述目标?

点点滴滴

我认为这就是你想要的:

template <typename C> class Instance {
  protected:
    C data;
  public:
    void populateData();
    /* want to change the behavior of populateData() depending on C */
};

template<>
void Instance<int>::populateData() {
    // Do something when C is int
}

您可以将函数专门化为您想要的任何类型。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章