Gerhard: Methoden in Klasse inkludieren

Beitrag lesen

Nein, nicht so, wie du denkst.

Der erste Aufruf der Funktion erste_ebene() definiert die Funktion test_m(). Erst danach steht diese zur Verfügung. Jeder weitere Aufruf der Funktion erste_ebene() führt zum Versuch, die Funktion doppelt zu definieren, was mit einer Fehlermeldung quittiert wird.

Das ist mir klar. Aber kann ich nun aus dem Hauptprogramm mit test_m() die Funktion aufrufen, oder ist sie nur der Funktion erste_ebene() bekannt? Mit anderen Worten, gibt es gar keine Ebenen, und liegt die Funktion test_m() nach dem Aufruf von erste_ebene() auf einer Ebene mit erste_ebene()?

Du kannst Funktionen nicht ineinander schachteln, um deren Scope zu verändern.

Also wahrscheinlich letzteres.

Davon unabhängig. Kennst Du ein sinnvolles Beispiel, wo so eingebundene Funktionen sinnvoll sind? Wahrscheinlich auch nur, wenn es unterschiedliche Funktionen mit gleichem Namen gibt, von denen nur eine eingebunden werden soll/ darf.