Я попытался узнать о спецификаторе доступа в С++, поэтому я получил доступ к общедоступному и защищенному члену из базового класса и выполнил функцию добавления в производном классе, как показано ниже,
#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;
}
Но во время компиляции я получаю следующее сообщение об ошибке: «оператор не может разрешить адрес функции перегрузки». Кто-нибудь может объяснить, в чем ошибка?
заранее спасибо
Obj.add;
? Это недопустимый оператор в C++. Это то, что компилятор говорит вам. Функции в C++ вызываются через оператор()
. Если вы хотите вызвать функцию, то где ваш оператор()
? - person AnT   schedule 14.11.2018