【问题标题】:template, inheritance and polymorphism c++模板、继承和多态 C++
【发布时间】:2018-04-13 17:49:19
【问题描述】:

我正在尝试创建一个排序类,例如(合并、快速、shell ...等),并将它们与一个更大的父类连接起来,称为 Sorter,我正在使用模板。但是,当我尝试连接任何儿童课程时。这是其中一个子类的示例。

class MergeSort : public Sorter <class T>
{ //code of the mergesort here }

我收到这些错误

在 '

编辑 这是 Sorter 类的代码

template <class T>
class Sorter {
 public:
 Sorter(){};
virtual void sort(vector<T>&, int, int) = 0;
};

【问题讨论】:

  • 那是因为那里的语法无效......你想用模板做什么?
  • 在盲目尝试使用某些东西之前先了解语法
  • 您引用的特定错误表明Sorter 不是模板类。
  • @Justin 会是我学习语法的练习
  • @DanielJour 我正在尝试使用模板,因为 ware 要求对任何数字进行排序,浮动/整数任何东西

标签: c++ templates inheritance polymorphism


【解决方案1】:

鉴于最新的编辑,现在证明这是您正在寻找的语法:

template<class T>
class MergeSort : public Sorter<T> {
//...

【讨论】:

  • 我之前有模板
  • 你有不同的地方。你需要注意细节,编​​译器不会读懂你的想法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-14
  • 2011-04-17
相关资源
最近更新 更多