Wie rufe ich die übergeordnete Funktion aus einer abgeleiteten Klasse mit C++ auf? Ich habe zum Beispiel eine Klasse namens parent
und eine Klasse namens child
die von der Mutter abgeleitet ist. Innerhalb von jeder Klasse gibt es eine print
Funktion. In der Definition der Druckfunktion des Kindes möchte ich einen Aufruf an die Druckfunktion der Eltern vornehmen. Wie würde ich dies tun?
Antworten
Zu viele Anzeigen?
Ajay yadav
Punkte
3517
Wenn der Zugriffsmodifikator der Mitgliedsfunktion der Basisklasse geschützt ODER öffentlich ist, können Sie die Mitgliedsfunktion der Basisklasse von der abgeleiteten Klasse aus aufrufen. Der Aufruf der nicht-virtuellen und virtuellen Mitgliedsfunktion der Basisklasse kann von der abgeleiteten Mitgliedsfunktion aus erfolgen. Bitte beachten Sie das Programm.
#include<iostream>
using namespace std;
class Parent
{
protected:
virtual void fun(int i)
{
cout<<"Parent::fun functionality write here"<<endl;
}
void fun1(int i)
{
cout<<"Parent::fun1 functionality write here"<<endl;
}
void fun2()
{
cout<<"Parent::fun3 functionality write here"<<endl;
}
};
class Child:public Parent
{
public:
virtual void fun(int i)
{
cout<<"Child::fun partial functionality write here"<<endl;
Parent::fun(++i);
Parent::fun2();
}
void fun1(int i)
{
cout<<"Child::fun1 partial functionality write here"<<endl;
Parent::fun1(++i);
}
};
int main()
{
Child d1;
d1.fun(1);
d1.fun1(2);
return 0;
}
Ausgabe:
$ g++ base_function_call_from_derived.cpp
$ ./a.out
Child::fun partial functionality write here
Parent::fun functionality write here
Parent::fun3 functionality write here
Child::fun1 partial functionality write here
Parent::fun1 functionality write here
superbem
Punkte
419
- See previous answers
- Weitere Antworten anzeigen