Роман
Роман

C++. Перегрузка операторов.

Есть некоторая структура по условию, и менять ее нельзя.
=========
typedef struct
{
int key1;
int key2;
string str;
} DataStruct;
=========
Можно ли перегрузить для нее оператор<< , не объявляя этот оператор в самой структуре? Если да, то как и где объявить об этом?

VD
Var Dan

DataStruct& operator << (DataStruct& lv, const DataStruct& rv) { ...}
Объявить можно в любом хедере.
Но желательно так не делать, ибо это нарушает базовые принципы перегрузки операторов - понятности, очевидности и однозначности смысла.

Похожие вопросы
Перегрузка операторов C#
Перегрузка оператора c++
Перегрузка операторов C++
Как осуществить перегрузку оператора * в C++?
Вопрос по с++ ( Перегрузка операторов в классах)
перегрузка оператора присваивания:
Помогите с условными операторами C#
Перегрузка операторов
Перегрузка операторов 2
Оператор C# Объясните доступным языком пожалуйста что значит оператор ^=