С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Шаблонные функции работы с деревом - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Освобождение памяти, удаление бинарного дерева http://www.cyberforum.ru/cpp-beginners/thread909829.html
Добрый день. Написал программу, которая ищет в файле неиспользуемые переменные, т.е. те, которые объявлены. Всё в общем-то работает, но препод говорит, что нужно освободить память. Поставил...
C++ Почему может не запускаться .exe файл? Всем привет! Такой вопрос немного странный. Я написал программу. Она компилируется и всё работает, всё что надо выводится - вопросов нет. (Всё - в режиме дебаг). Далее я захожу в директорию... http://www.cyberforum.ru/cpp-beginners/thread909826.html
Передача указателя структуры в функцию, ошибка на этапе выполнения C++
Помогите разобратся в чем ошибка. Ошибка вылетает на этапе выполнения. struct book { char * name; char price; static unsigned int CELL; };unsigned int book::CELL = 0; void book_init...
Поменять элементы массива местами(код) C++
Есть задание найти по главной и второстепенной диагоналям массива максимальный и минимальный элементы и поменять их местами. Код получается, если делать через swap (то что в комменте), но я хочу...
C++ Отсортировать элементы файла input и вывести их в файл output http://www.cyberforum.ru/cpp-beginners/thread909782.html
Здравствуйте. Помогите решить. Есть файл input, в котором элементы располагаются столбцом. Нужно отсортировать элементы файла input и вывести их в файл output.
C++ Visual Studio Только что установил этот мега Визуал С++ написал "элементарную" программу и вылетает ошибка при компиляции типа "не найден исполняющий файл" переустанавливал все тоже :С подробнее

Показать сообщение отдельно
TonyPride
2 / 2 / 1
Регистрация: 22.10.2012
Сообщений: 47
24.06.2013, 15:31  [ТС]
Возник новый вопрос по этой же задаче: как передать в дерево структуру (описана в коде)?
Кликните здесь для просмотра всего текста
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<string.h>
#include<iostream>
#define N 200
 
using namespace std;
 
template <class T>
struct btree
{
    T value;
    struct btree *left,*right;  
    long left_p, right_p;       
};
 
// эта структура
struct Test
{
    int age;
    string name;
};
 
istream& operator>>(istream& i, Test& a)
{
    cin >> a.name >> a.age;
    return i;
}
 
 
ostream& operator<<(ostream& i, Test& a) {
    cout << a.name << a.age;
    return i;
}
 
 
template <class T>
void Ins_Btree(T val, btree<T> **q)
{
    if(*q == NULL)
    {
        *q = new btree<T>;
        (*q) -> left_p = (*q) -> right_p = 0L;
        (*q) -> left = (*q) -> right = NULL;
        (*q) -> value = val;
        return;
    }
    if((*q) -> value > val) Ins_Btree (val, &(*q) -> left);
    else    Ins_Btree (val, &(*q) -> right);
}
 
template <class T>
void Ins_to_Btree(T *array, int size, btree<T> **root)
{
    int i=0; while(i<size) { Ins_Btree(array[i], root); i++;}
}
 
 
template <class T>
void Print_Btree(btree<T> *p)
{
    if (p == NULL) return;
    Print_Btree(p -> left);
    cout<<p->value<<"  ";
    Print_Btree(p -> right);
}
 
 
int main()
{
Test a;
int key;
btree<Test> *root5=NULL;
while(1)
{
        cout<<"Enter 1 to continue and 0 to exit"<<endl;
        cin>>key;
        if (key==1)
                 {
                            cout<<"Enter Name and Age"<<endl;
                            cin >> a;
                            Ins_Btree (a, &root5);
                            cout << endl << a <<endl;
                 }
                 if (key==0) break;
}
cout<<"result"<<endl;
Print_Btree(root5);
getch ();
}

Говорили, что надо склеить значения a.age и a.name в одну строку и передать в дерево. Но как можно склеить int и string?
P.S. что можно передать по отдельности a.name или a.age в дерево соотв. типа знаю...
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.