Wie lautet die Syntax zum Aufrufen einer Methode in einem besitzenden Objekt aus einem eigenen Objekt in C++?Wie rufe ich eine Methode in einem besitzenden Objekt in C++ auf?
Übergeordnete Klasse:
class Parent
{
private:
Child child;
public:
Parent()
{
addChild(child);
}
void MethodToBeCalled(int someArgument)
{
}
};
Kinderklasse:
class Child
{
private:
void myVoid()
{
//Call parent method somehow
}
public:
Child()
{
}
};
Ich versuchte, meine Frage so einfach und allgemein wie möglich zu machen (von Nutzen wie möglich, so viele zu sein). Lass es mich wissen, wenn ich es noch klarer machen kann.
Vielen Dank!
Sie müssen einen Verweis auf "Parent" in der Klasse "Child" kennen, um dies zu tun. –
@ πάνταῥεῖ ja, danke! aber ich verstehe nicht, wie diese Syntax in meinem Beispiel aussehen würde? – Daggepagge
Es gibt keine "Eltern-Kind" -Beziehung zwischen Ihren Objekten in dem von Ihnen dargestellten Codebeispiel. Dies macht den Titel der Frage sehr irreführend. Es gibt eine "aggregate-member" ("container-contained") -Beziehung. Diese Beziehung impliziert jedoch im Allgemeinen keinen Zugang vom Container zum Container. Dafür gibt es spezielle Hacks (wie das bekannte Makro "container_of"), aber sie sind nur eingeschränkt anwendbar. – AnT