Питання справді в назві; Я впевнений, що є щось логічне, але поки я тупий!
read()і write()? Я думаю, що визначені користувачем оператори повинні мати подібну семантику, як вбудовані оператори, наприклад, +можна використовувати для додавання складних чисел або геометричних векторів. Але ostream::operator<<нічого не пов’язано зі зміною бітів. Деякі ранні дизайнерські рішення на C ++ зараз вважаються проблематичними, наприклад, автоматична генерація конструкторів копій, якщо присутній деструктор, тому не обов’язково має бути щось логічне щодо вибору operator<<.