Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 4
1

Ошибка при выполнении программы

16.04.2013, 15:54. Показов 1497. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
92
93
94
95
96
97
//set.h
#pragma once
 
typedef unsigned short WORD;
 
class Set
{
private:
    int minElem;
    int maxElem;
    WORD *elems;
    int numWords;
 
    friend const Set & operator | (const Set & s1, const Set & s2);
    friend const Set & operator & (const Set & s1, const Set & s2);
    friend const Set & operator - (const Set & s1, const Set & s2);
    friend const Set & operator - (const Set & s);
public:
    Set(int min=0, int max = 255);
    Set(const Set & s);
    ~Set();
 
    bool Has(int n) const;
 
    Set & operator |= (int n);
    Set & operator |= (const Set & other);
 
    Set & operator &= (const Set & other);
 
    Set & operator -= (int n);
    Set & operator -= (const Set & other);
 
    Set & Inverse();
};
//SetGraph.h
#pragma once
 
#include "graph.h"
#include "Set.h"
 
class MatrixGraph;
class ListGraph;
 
class SetGraph : public Graph
{
private:
    friend SetGraph * Convert(const MatrixGraph & srcGraph);
    friend ListGraph * Convert(const SetGraph & srcGraph);
 
    Set **graph; //наш граф
    int vertexNumber; //колво элементов в массиве
 
public: 
    SetGraph(int n) : vertexNumber(n), graph(new Set*[n]) //конструктор. Кол-во вершин определяется изначально. создается граф за счет создания массива указателей на множество
    {
        for(int i=0;i<n;i++)
        {
            graph[i]= new Set(0,n); // множество дополнительно инициализируется
        }
    }
    ~SetGraph();
 
    int CountVertex() const //кол-во вершин
    {
        return vertexNumber;
    }
 
    void AddArc(int from, int to);
    bool HasArc(int from, int to) const;
};
///////////////////////////////////////////
//SetGraph.cpp
#include "SetGraph.h"
 
SetGraph::~SetGraph() //наш диструктор
{   //по элементам проходим и удаляем их из памяти
    for (int i=0;i<vertexNumber;i++)
    {
        delete graph[i];
    }
    delete [] graph;
}
 
void SetGraph::AddArc(int from, int to) 
{
    if(from<0 || from>= vertexNumber || to<0 || to >= vertexNumber)
        return;
    *graph[from] |= to; //проверка наличия вершины и проверка нудлей вершины. обращаемся к вершине из которой вытаскиваем множество и добавляем туда, куда должно входить
}
 
 
bool SetGraph::HasArc(int from, int to) const
{
    if(from<0 || from>= vertexNumber || to<0 || to >= vertexNumber)
        return false;
    return graph[from]->Has(to); // тут только вызов метода Хес для соответсвующего множества в множество соотвествующего вершине из которого дуга исходит 
}

Вот текст ошибок:
Код
1>SetGraph.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Set::~Set(void)" (??1Set@@QAE@XZ) в функции "public: void * __thiscall Set::`scalar deleting destructor'(unsigned int)" (??_GSet@@QAEPAXI@Z)
1>SetGraph.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: class Set & __thiscall Set::operator|=(int)" (??_5Set@@QAEAAV0@H@Z) в функции "public: virtual void __thiscall SetGraph::AddArc(int,int)" (?AddArc@SetGraph@@UAEXHH@Z)
1>SetGraph.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: bool __thiscall Set::Has(int)const " (?Has@Set@@QBE_NH@Z) в функции "public: virtual bool __thiscall SetGraph::HasArc(int,int)const " (?HasArc@SetGraph@@UBE_NHH@Z)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.04.2013, 15:54
Ответы с готовыми решениями:

Ошибка при выполнении программы.
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;time.h&gt; #include &lt;cstdlib&gt; using namespace std;...

Ошибка при выполнении программы
Выдает вот такую ошибку при выполнении программы. Компиляция происходит нормально. а работать не...

Ошибка при выполнении программы
Добрый вечер. Проблема следующая: при выполнении программы выдает ошибку, когда начинаю вводить...

При выполнении программы выходит ошибка
Когда выполняется программа выходит ошибка: Необработанное исключение по адресу 0x77A8205E...

1
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,737
Записей в блоге: 1
16.04.2013, 21:36 2
Нет реализации соответствующих методов класса Set
0
16.04.2013, 21:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.04.2013, 21:36
Помогаю со студенческими работами здесь

Ошибка <hash_map> при выполнении программы
При выполнении простого консольного проекта C++ #include &quot;std_lib_facilities.h&quot; int main() {...

Настройка unicode. Ошибка при выполнении программы
Здравствуйте. Знаю, что есть tchar.h, но мне нужно настроить unicode самому. #ifdef UNICODE...

Динамический массив. Ошибка при выполнении программы
Программа должна предоставить заполнение массива пользователю, а дальше вывести массив на экран....

Ошибка при выполнении программы: Куча была повреждена
Не могу найти ошибку. Код: #include &lt;iostream&gt; #include &lt;Windows.h&gt; #include &lt;conio.h&gt; ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru