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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.90
hz_kto_ya
0 / 0 / 0
Регистрация: 07.07.2009
Сообщений: 14
#1

CXX0030 что делать? - C++

07.07.2009, 12:02. Просмотров 3711. Ответов 7
Метки нет (Все метки)

Столкнулся с проблемой, не хотят создаваться структуры в классе (именно в данном примере). Все вроде бы нормально написано, но поставив брейкпоинт на функцию insert, то на строчке NUMBER *z; в дебагере замечаю что все, объекты структуры z :CXX0030: Error: expression cannot be evaluated. Я уже и гуглил и лазил в коде, но ничего у меня не вышло . Помогите знатоки!

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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
#include <iostream>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
using namespace std;
 
void RussianMessage(char *str){
char message[100];
CharToOem(str,message);
cout<<message;
}
 
struct Rules{
int index;
char rule[100];
Rules *next;
};
 
class BASE{
private:
struct ABOUT{
int index_;
time_t date;
char rule_[100];
ABOUT *next;
};
 
struct NUMBER{
int number;
NUMBER *left, *right, *parent;
ABOUT *about;
};
NUMBER *root;
public:
 
BASE(){
root = NULL;
}
 
void show_number(int number_of_car){
NUMBER *elem = root;
while((elem != 0)&&(number_of_car!=elem->number)){
if(number_of_car < elem->number)
elem = elem->left;
else
elem = elem->right;
}
if(number_of_car == elem->number){
RussianMessage("Номер машины: ");
cout<<elem->number<<"\n";
RussianMessage("Правонарушения:");
cout<<"\n";
getch();
}
else{
system ( "color 0c" );
RussianMessage("Такого номера нету в базе");
cout<<"\n";
getch();
}
}
 
int check_number(int key){
NUMBER *elem = root;
while((elem != 0)&&(key!=elem->number)){
if(key<elem->number)
elem = elem->left;
else
elem = elem ->right;
}
if(key==elem->number)
return 1;
else
return 0;
}
 
void insert_rule(){
 
}
 
void insert(){
int number_of_car;
RussianMessage("Введите номер машины: ");
cin>>number_of_car;
/*if(check_number(number_of_car))
insert_rule();
else{*/
NUMBER *z;
z->number = number_of_car;
z->left = NULL;
z->right = NULL;
NUMBER *y = NULL;
NUMBER *elem = root;
while(elem != 0){
y = elem;
if(z->number < elem->number)
elem = elem->left;
else
elem = elem->right;
 
}
z->parent = y;
if(y == 0)
root = z;
else
if(z->number < y->number)
y->left = z;
else
y->right = z;
//}
}
};
 
 
void main(){
#include "rules.h"
system("title База данных правонарушителей");
/* ar=start;
while(ar!=NULL){
cout<<ar->index<<". ";
RussianMessage(ar->rule);
cout<<".\n";
ar=ar->next;
}*/
BASE kiev;
int a=0;
do{
system("cls");
RussianMessage("1.Просмотр всей базы данних.");
cout<<"\n";
RussianMessage("2.Просмотр диапозона номеров.");
cout<<"\n";
RussianMessage("3.Просмотр информации по заданому номеру.");
cout<<"\n";
RussianMessage("4.Добавление нового номера(или новых правонарушений).");
cout<<"\n";
a=getch();
switch (a){
case 49:{
 
break;
}
case 50:{
 
break;
}
case 51:{
system("cls");
RussianMessage("Введите номер машины: ");
int numb;
cin>>numb;
kiev.show_number(numb);
break;
}
case 52:{
kiev.insert();
break;
}
}
}
while(a!=27);
}
В rules.h находиться односвязный список(что то по типу правил ГАИ)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2009, 12:02     CXX0030 что делать?
Посмотрите здесь:

CXX0030: Error: expression cannot be evaluated - C++
Добрый вечер! я новичок в программировании, подскажите что за ошибка и как ее исправить. компилирую код, он компилится, но выдает...

Что делать? - C++
Вот код #include &lt;iostream&gt; using namespace std; int main(){ unsigned long long int sc; cout &lt;&lt; &quot;Vvedite kol-vo secund&quot; &lt;&lt;...

что делать? - C++
ребята помогите решить задачу :) Даны вещественные массивы А,B определить значения вещественного массива С по правилу : С=cумме...

что делать? - C++
#include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;string.h&gt; #include &quot;iostream&quot; using namespace std; ...

Что делать с LINK1120 - C++
При отладке в списке ошибок пишет про неразрешенный элемент LINK 1120 и неразрешенный внешний символ _tmainCRTStartup.Если что то у меня...

что делать с уравнениями? - C++
Простите пожалуйста срочно нужна помощь, разобраться в задании. Писать слишком много поэтому пришлось выложить фотографии. Мне не надо...

Что делать с EOF - C++
Всем привет. Ввожу в Visual Studio 2012 вот такой код: #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #define eof -1 int main() { long...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
^Tecktonik_KiLLeR
1159 / 441 / 22
Регистрация: 23.06.2009
Сообщений: 6,230
Завершенные тесты: 1
07.07.2009, 13:43     CXX0030 что делать? #2
visual studio 2008
у меня 2 ошибки....1-не может преобрховать в чар, 2- не может найти rules.h
hz_kto_ya
0 / 0 / 0
Регистрация: 07.07.2009
Сообщений: 14
07.07.2009, 14:37  [ТС]     CXX0030 что делать? #3
1. Связана с тем что стоит другая кодировка (поменяй в Properties->Configuration Properties->Character Set->Use unicode... на Use Multi-byte...)
2. Убери вообще строчку #include <rules.h> в main (не с ней проблема...)
^Tecktonik_KiLLeR
1159 / 441 / 22
Регистрация: 23.06.2009
Сообщений: 6,230
Завершенные тесты: 1
07.07.2009, 14:57     CXX0030 что делать? #4
ну короч перейди на 2008 вижуал студио
hz_kto_ya
0 / 0 / 0
Регистрация: 07.07.2009
Сообщений: 14
07.07.2009, 14:59  [ТС]     CXX0030 что делать? #5
я и так в ней
^Tecktonik_KiLLeR
1159 / 441 / 22
Регистрация: 23.06.2009
Сообщений: 6,230
Завершенные тесты: 1
07.07.2009, 16:37     CXX0030 что делать? #6
хмммм............значит глючит
попробуй переустановить
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,652
Записей в блоге: 1
07.07.2009, 16:45     CXX0030 что делать? #7
C++
1
2
NUMBER *z;
z->number = number_of_car;
Указатель кто инициализировать будет?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.07.2009, 17:22     CXX0030 что делать?
Еще ссылки по теме:

Что дальше делать? - C++
Я тут недавно начал изучать с++ и изучил основы языка и немного порешал легких задач. Не подскажите ли мне какие книги прочитать для более...

Что делать с Zlib? - C++
Хочу установить библиотеку, но для ее работы нужна также zlib. &quot;download the zlib library which matches your compiler and link it to your...

Что делать с утечками памяти? - C++
С этими утечками памяти в C++ просто беда. Посоветуйте, что можно сделать? Может быть есть какие-то специальные утилиты?

Пожалуйста, посоветуйте, что делать - C++
Здравствуйте!!! Мне надо написать программу для решения ГРГ(расчетно-графическая работа), только я не знаю как передавать с этой программы...

програмные файлы, что делать? - C++
при после компиляции программы, если удалить папку debug, то прога не запускается, выдает ошибку, как это исправить? #include...


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

Или воспользуйтесь поиском по форуму:
hz_kto_ya
0 / 0 / 0
Регистрация: 07.07.2009
Сообщений: 14
07.07.2009, 17:22  [ТС]     CXX0030 что делать? #8
вот это я идиот Внатуре... z = new NUMBER; Спасибо!
Yandex
Объявления
07.07.2009, 17:22     CXX0030 что делать?
Ответ Создать тему
Опции темы

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