Я пытаюсь определить унаследованный класс из класса std :: vector. Ниже приведен кодОшибка при наследовании std :: vector
template<class t>
class Vector:vector<t>
{
public:
using vector<t>::vector;
};
int main(int argc, char *argv[])
{
Vector<int> v;
return 0;
}
И я получаю сообщение об ошибке, как это:
"error: 'std::vector<t, std::allocator<_CharT> >::vector' names constructor"
Поэтому в основном я хотел бы знать, почему моя программа терпит неудачу и что все процедуры должны быть перегружены в моем унаследованном классе из родительского класса std :: vector.
Заранее спасибо.
При наследовании от 'std :: vector' обратите внимание, что ему не нужно определять виртуальный деструктор. Таким образом, наследование от него обычно не считается хорошей идеей. – Bathsheba
Какая версия и опции GCC? – immibis
@Bathsheba Это личное наследование, поэтому я сомневаюсь в отсутствии виртуального деструктора. – juanchopanza