У меня есть два файла и базовый класс в каждом из них. Я хочу, чтобы некоторые функции в производном классе использовали члены данных внутри базового класса. Проблема, с которой я столкнулся напоминающую близко к приведенному ниже:конструктор базового класса вызывается при объявлении производного класса
В файле BaseFile.h
class Base{
private:
int a, b;
protected:
//some data members and functions that I want to share with derived class
public:
Base(int apple, int ball):apple(a), ball(b) {}
};
В файле DerivedFile.h
#include "BaseFile.h"
class Derived : public Base{ //error in this line
//stuffs
};
Всякий раз, когда я объявляю производный класс, я получите сообщение об ошибке «Отсутствие подходящей функции для вызова Base :: Base note :: кандидат ожидает 2 аргумента 0 предоставлено». Что может быть причиной этой проблемы?
Как Derived знать, как вызвать базовый конструктор? –
Прошу прощения, я не мог получить то, что вы просите. Я назвал оба их конструктора отдельно в третьем файле. – user3124361
Вам нужно показать свой «третий файл» –