Добрый день.
Есть код:
C++ (Qt)
template<typename K, typename V> class AbstractBaseDialog : public QDialog
{
public:
typedef QHash<K, V> Result;
explicit AbstractBaseDialog(QWidget *parent = 0);
virtual ~AbstractBaseDialog() {}
...
};
class AbstractFormattingDialog : public AbstractBaseDialog<QString,QStringList>
{
Q_OBJECT
public:
typedef Result::ConstIterator Iterator;
explicit AbstractFormattingDialog(QStringList &source, QWidget *parent = 0);
virtual ~AbstractFormattingDialog() {}
...
protected:
...
virtual void _loadData() = 0;
...
};
Пишет это:
error: 'AbstractBaseDialog' is not a template type
template<class K, class V> class AbstractBaseDialog : public QDialog
^
error: expected template-name before '<' token
class AbstractFormattingDialog : public AbstractBaseDialog<QString,QStringList>
^
error: expected '{' before '<' token
error: expected unqualified-id before '<' token
Что ему не так?