Tại sao tài liệu về một số ngôn ngữ nói "tương đương" thay vì "là"?
Ví dụ: Tài liệu Python nói
itertools.chain(*iterables)
...
Tương đương với:
def chain(*iterables): # chain('ABC', 'DEF') --> A B C D E F for it in iterables: for element in it: yield element
Hoặc tài liệu tham khảo C ++ này trên find_if
:
Hành vi của mẫu hàm này tương đương với:
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; }
Nếu đó không phải là mã thực tế, họ có thể đăng nó không? Và nếu đó là mã thực tế, tại sao họ phải nói đó là "Tương đương" chứ không đơn giản là "là"?
chain
được triển khai trực tiếp trong C, do đó nó "tương đương" với mã python đó vì nó tạo ra kết quả tương tự, nhưng nó tránh được một chút chi phí trong việc diễn giải điều đó mã byte.
find_if
là không "the" tài liệu cho C ++. Nếu đúng như vậy, thì việc chọn diễn viênbool
(mà bạn thấy trong câu trả lời bên dưới) sẽ sai.