Z niektórych projektów typu open source zebrałem następujący styl kodowania
void someFunction(bool forget);
void ourFunction() {
someFunction(false /* forget */);
}
Zawsze mam wątpliwości, co false
tu oznacza. Czy oznacza to „zapomnieć”, czy też „zapomnieć” odnosi się do odpowiedniego parametru (jak w powyższym przypadku), a „fałsz” ma go zanegować?
Jaki styl jest używany najczęściej i jaki jest najlepszy sposób (lub kilka lepszych sposobów), aby uniknąć dwuznaczności?
someFunction(forget: true);
true
się false
i nie zaktualizować komentarz. Jeśli nie możesz zmienić interfejsu API, najlepszym sposobem na skomentowanie tego jestsomeFunction( false /* true=forget, false=remember */)
sortAscending
i sortDescending
, lub podobne). Teraz wewnątrz mogą obaj wywołać tę samą metodę prywatną, która może mieć tego rodzaju parametr. Właściwie, jeśli język to obsługuje, prawdopodobnie przekazałbym funkcję lambda, która zawierała kierunek sortowania ...