Da alcuni progetti open source, ho raccolto il seguente stile di codifica
void someFunction(bool forget);
void ourFunction() {
someFunction(false /* forget */);
}
Ho sempre dei dubbi su cosa falsesignifichi qui. Significa "dimenticare", oppure "dimenticare" si riferisce al parametro corrispondente (come nel caso sopra), e "falso" intende negarlo?
Quale stile viene utilizzato più spesso e qual è il modo migliore (o alcuni dei modi migliori) per evitare l'ambiguità?
someFunction(forget: true);
trueper falsee non aggiornare il commento. Se non riesci a modificare l'API, il modo migliore per commentare questo èsomeFunction( false /* true=forget, false=remember */)
sortAscendinge sortDescending, o simili). Ora, all'interno , entrambi possono chiamare lo stesso metodo privato, che potrebbe avere questo tipo di parametro. In realtà, se la lingua lo supportasse, probabilmente ciò che passerei sarebbe una funzione lambda che conteneva la direzione di ordinamento ...