З деяких проектів з відкритим кодом я зібрав такий стиль кодування
void someFunction(bool forget);
void ourFunction() {
someFunction(false /* forget */);
}
Я завжди сумніваюся, що false
тут означає. Чи означає це "забути", чи "забудь" посилається на відповідний параметр (як у випадку вище), а "помилка" має намір заперечувати його?
Який стиль використовується найчастіше і який найкращий спосіб (або які кращі способи) уникнути неоднозначності?
someFunction(forget: true);
true
щоб false
і не оновлювати свій коментар. Якщо ви не можете змінити API, то найкращий спосіб прокоментувати цеsomeFunction( false /* true=forget, false=remember */)
sortAscending
і sortDescending
або подібні). Тепер усередині вони можуть викликати той самий приватний метод, який може мати такий тип параметрів. Насправді, якби мова підтримувала це, можливо, те, що я передавав би, була б лямбда-функцією, яка містила напрям сортування ...