Aus einigen Open Source-Projekten habe ich den folgenden Codierungsstil zusammengetragen
void someFunction(bool forget);
void ourFunction() {
someFunction(false /* forget */);
}
Ich habe immer Zweifel, was falsehier bedeutet. Bedeutet es "vergessen" oder bezieht sich das "vergessen" auf den entsprechenden Parameter (wie im obigen Fall) und "falsch" soll es negieren?
Welcher Stil wird am häufigsten verwendet und wie lässt sich die Mehrdeutigkeit am besten (oder auf eine der besseren Arten) vermeiden?
someFunction(forget: true);
truezu falseund nicht den Kommentar aktualisieren. Wenn Sie die API nicht ändern können, ist dies am besten zu kommentierensomeFunction( false /* true=forget, false=remember */)
sortAscendingund sortDescendingoder ähnlich). Nun, nach innen , können sie rufen beide die gleiche private Methode, die diese Art von Parametern haben könnte. Wenn die Sprache dies unterstützen würde, wäre das, was ich übergeben würde, wahrscheinlich eine Lambda-Funktion, die die Sortierrichtung enthält ...