Чому в документації на деяких мовах написано "еквівалентно", а не "є"?
Наприклад, кажуть Документи Python
itertools.chain(*iterables)
...
Еквівалентно :
def chain(*iterables): # chain('ABC', 'DEF') --> A B C D E F for it in iterables: for element in it: yield element
Або ця посилання C ++ на find_if
:
Поведінка цього шаблону функції еквівалентна :
template<class InputIterator, class UnaryPredicate> InputIterator find_if (InputIterator first, InputIterator last, UnaryPredicate pred) { while (first!=last) { if (pred(*first)) return first; ++first; } return last; }
Якщо це не фактичний код, чи не можуть вони розмістити його? І якщо це фактичний код, чому вони повинні говорити, що це "Еквівалент", а не просто "є"?
chain
він реалізований безпосередньо в C, таким чином, він "еквівалентний" тому коду python, оскільки він дає такий же результат, але це дозволяє уникнути небагато накладних тлумачень цього байт-код.
find_if
це не "" документація для C ++. Якби це було, то подання наbool
(що ви бачите у відповіді нижче) було б неправильним.