Gibt es eine gute Methode zum Schreiben von C/C++ - Funktionsheadern mit Standardparametern, die Funktionsaufrufe sind?Kann das Ergebnis eines Funktionsaufrufs als Standardparameterwert verwendet werden?
Ich habe einige Header mit der Funktion:
int foo(int x, int y = 0);
ich in einem großen Code-Basis arbeite, wo viele Funktionen diese Funktion aufrufen und sind abhängig von diesem Standardwert. Dieser Standardwert muss jetzt etwas ändern dynamisch und ich nach einem Weg suchen zu tun:
int foo(int x, int y = bar());
Wo bar() ist eine Funktion, die den Standardwert generiert basierend auf einigen Systemparametern. Alternativ würde diese Funktion Prototyp wie folgt aussehen:
int foo(int x, int y = baz.bar());
Wo baz eine Funktion zu einem Objekt gehören, ist, die nicht innerhalb der Header-Datei instanziiert hat.
AFAIK das ist relevant für C++ nicht C (C unterstützt keine Standardwerte). – Motti