Спецификатор доступа, не в состоянии вызвать функцию, которая определена в производном классе - PullRequest
0 голосов
/ 14 ноября 2018

Я попытался узнать о спецификаторе доступа в c ++, поэтому я получил доступ к общедоступному и защищенному члену из базового класса и выполнил функцию добавления в производном классе, как показано ниже,

#include<iostream>
using namespace std;

class Base
{
    public:
        int a;
    protected:
        int b;
};

class Derived : public Base
{
    public:
        int sum;
        void add()
        {   
            a = 10;
            b = 20;
            sum = a + b;
        }
};


int main()
{
    Derived Obj;
    Obj.add;
    cout << "The sum : " << Obj.sum << "\n";
    return 0;
}   

Но покаскомпилировать я получаю следующее сообщение об ошибке «оператор не может разрешить адрес функции перегрузки» может кто-нибудь объяснить, в чем ошибка?

Заранее спасибо

1 Ответ

0 голосов
/ 14 ноября 2018

В вызове функции отсутствует скобка в следующей строке:

Obj.add;

Должно быть: Obj.add();

...