Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.88
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
#1

Бинарные деревья - C++

22.08.2012, 19:24. Просмотров 2052. Ответов 4
Метки нет (Все метки)

Имею три файла:

Скажите пожалуйста почему я не могу создать э-т m?(Класс tree)
Он мне пишет - [Linker error] undefined reference to `tree::~tree()'
[Linker error] undefined reference to `tree::~tree()'
ld returned 1 exit status
[Build Error] [binaryTree.exe] Error 1


main.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
# include "binaryTree.h"
 
using namespace std;
 
int main(int argc, char *argv[])
{
    tree m;
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
binaryTree.h
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
# ifndef _BINARYTREE_
# define _BINARYTREE_
 
# include <iostream>
using namespace std;
 
class tree
{
    private:
        struct node
        {
            int value;
            node* left;
            node* right;
        };
        
    public:        
        tree()
        {
            cout << "Enter tree root: ";
            cin >> root -> value;
            root->right=NULL;
            root->left=NULL;
        };
        
        ~tree();
        
        node* root;
        
        
        bool addNode(int,int);
        void showTree();
};
 
#endif
binaryTree.cpp
C++
1
# include "binaryTree.h"
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.08.2012, 19:24     Бинарные деревья
Посмотрите здесь:

C++ бинарные деревья
Бинарные деревья C++
Бинарные деревья C++
Бинарные деревья C++
Бинарные деревья C++
C++ Бинарные деревья
C++ бинарные деревья
бинарные деревья C++
Бинарные деревья C++
C++ Бинарные деревья
C++ Бинарные деревья
Бинарные деревья C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Catstail
Модератор
22302 / 10707 / 1741
Регистрация: 12.02.2012
Сообщений: 17,777
22.08.2012, 19:33     Бинарные деревья #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public:        
        tree()
        {
            cout << "Enter tree root: ";
            cin >> root -> value;        
            root->right=NULL;
            root->left=NULL;
        };
        
        ~tree();      // мне кажется, не хватает "{ }"
        
        node* root;
                
        bool addNode(int,int);  // где реализация?
        void showTree();        // где реализация?
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
22.08.2012, 19:38  [ТС]     Бинарные деревья #3
Да реализация будет потом, просто я хочу понять в чём дело, почему он не даёт создать

Добавлено через 3 минуты
Catstail, ошибка именно в main.cpp, когда пытаюсь создать э-т. Если удалить строчку с созданием, то всё - ок
Catstail
Модератор
22302 / 10707 / 1741
Регистрация: 12.02.2012
Сообщений: 17,777
22.08.2012, 19:44     Бинарные деревья #4
Сейчас проверю. Результат напишу.

Добавлено через 5 минут
Как я писал выше, у тебя неверный деструктор. Надо:

C++
1
        ~tree(){};
Да и в конструкторе ошибка. root нужно создать;

C++
1
2
3
4
5
6
7
8
        tree()
        {
            root = new node;
            cout << "Enter tree root: ";
            cin >> root -> value;
            root->right=NULL;
            root->left=NULL;
        };
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
22.08.2012, 19:52  [ТС]     Бинарные деревья #5
блин, большое спасибо, ступил что-то
Yandex
Объявления
22.08.2012, 19:52     Бинарные деревья
Ответ Создать тему
Опции темы

Текущее время: 16:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru