|
|
|
| Подскажите пожалуйста как в С++ перегрузить опреатор потока >>.
Например есть класс бинарного дерева CBinTree в нем метод AddNode(int). Так вот мне надо перегрузить >> чтобы можно было добавлять узлы так
CBinTree BinTree1;
BinTree>>5;
|
Примерно я догадываюсь как описать функцию, а вот что далбше?
istream & operator >> (istream & in,CBinTree & tree)
{
// вот тут проблемы
}
|
Заранее спасибо! | |
|
|
|
|
|
|
|
для: Евгений Петров
(10.11.2005 в 00:22)
| | Если хочешь с консоли получать элементы дерева, то так:
istream & operator >> (istream & in,CBinTree & tree)
{
//.....
//получаешь элемент дерева - некое число
int n;
in >> n;
//добавляешь в дерево
tree.AddNode(n);
return in;
}
|
Если просто оператором сдвига добавлять элементы, то лучше так:
CBinTree & operator<< (CBinTree & tree,int n)
{
//добавляешь в дерево
tree.AddNode(n);
return tree;
}
//тогда писать можно:
CBinTree t;
t << 5 << 4;
|
Писал по памяти, может что-то упустил | |
|
|
|
|
|
|
|
для: mannnz
(10.11.2005 в 02:17)
| | Спасибо! | |
|
|
|