Если вы определяете операторы в вашем классе, они автоматически получают доступ к закрытым частям задействованных объектов. Однако не все операторы должны быть определены как часть класса. В тех случаях, когда вы определяете операторы вне вашего класса, они должны быть объявлены как друзья, если они должны иметь доступ к закрытым частям объектов.