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

Констуркторы, деструкторы.... - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ При удалении динам.массива Segmentation failure http://www.cyberforum.ru/cpp-beginners/thread287955.html
Программа работает но когда удаляем delete buf; то возникает Segmentation failure.... без его удаления всё нормально... #include <iostream> #include <stdio.h> #include <string.h> using namespace std; int General_Funckshion(char *name); bool Glasnie(char s); void Show_File_Now(FILE *f);
C++ Прикрутить CppCheck к Code:Blocks Вот решил познакомиться с этой известной средой (переустановил Винду и понял, что MSVS ставить уже не хочу)) Все поставил, все работает, но вот начал ковыряться в плагинах и нашел на просторах инета плагин CppCheck. Конечно же захотелось) Скачал установщик CppCheck'а (.msi), поставил в папку \plugins (получились екзешник и дллка). Далее в самой среде открываю Manage plugins, там выбираю install... http://www.cyberforum.ru/cpp-beginners/thread287945.html
C++ Среднее значение в СМО
В условии дано среднее значение Х заявок в месяц в течении 6 месяцев.Как можно это реализовать получая конкретные числа.Про что почитать?Я так понял разброс может быть от 0 до 2Х, но чтобы среднее среди 6 значений было Х. В какую сторону копать?
Массив структур. Фун-я удаления и поиска. C++
Первый курс. Решили над нами сделать эксперимент и дали нам курсовую. В принципе ничего сложного абсолютно, подобное задание в первом семестре но на паскале я делал. А вот с С++ не получается:( Создать массив структур (записей), содержащих следующие поля: - номер поезда; - название пункта отправления и назначения; - время отправления. Предусмотреть в программе следующие действия: а) ...
C++ Строки и функции http://www.cyberforum.ru/cpp-beginners/thread287929.html
Программа выводит все цитаты из текста,считанного из файла. Надо оформить ее с помощью функции. Когда я пытаюсь сделать функцию, появляется несоответствие типов. Как сделать правильно? Подскажите, пожалуйста) вот прога: #include <iostream> #include <fstream> #include <string> void main() { std::ifstream ifs("test.txt");
C++ Шифрование Xor'ом Добрый день, уважаемые) тут такое дело, сел делать курсач и столкнулся с проблемой. Работа по шифрованию бинарными операциями и преподаватель дал алгоритм для шифрования XOR'ом...Но тут проблема - в алгоритме использован оператор ReDim, которого в с++ вроде бы нет...подскажите как решить данную проблемы... Задание курсовой такое: Разработать программу, кодирующую информацию в текстовом файле... подробнее

Показать сообщение отдельно
CFYZ
 Аватар для CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
31.05.2011, 13:22  [ТС]     Констуркторы, деструкторы....
Для этого класса описать конструкторы (в том числе и конструктор копирования), деструктор, функцию печати данных. Создать экземпляр полученного класса и проиллюстрировать его корректную работу: распечатать данные, изменить данные и распечатать вновь. Создать второй экземпляр класса как копию первого и проиллюстрировать корректную работу конструктора копирования: распечатать и изменить данные объекта-копии, распечатать данные обоих объектов, сравнить результат. Предусмотреть ошибки.


Помогите реализовать в моей программе выделенный КРАСНЫМ фрагмент задания.


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
163
164
165
166
167
168
169
170
171
172
173
174
175
176
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#include <iostream.h>
#include <conio.h>
#include <string.h>
 
class book
{
    struct ListElement
   {
      string avtor,name;
      ListElement* Next;
   };
   ListElement *First;
   ListElement *Last;
   ListElement *Current;
   public:
     book();
    ~book();
     book(const book & thebook){
     Current=First;
     while (Current){
     Current->avtor=thebook.Current->avtor;
     Current->name=thebook.Current->name;
     Current=Current->Next;
     }
     };
     void dob();
     int udal();
     void poisk(string value);
     void show();
};
 
 
book::book():
First(NULL),Last(NULL),Current(NULL)
{}
 
book::~book()
{
  while(First)
   {
      Current=First;
      First=Current->Next;
      delete Current;
   }
}
 
int book::udal()
{
   clrscr();
   Current=First;
   if (Current)
   {
      First=Current->Next;
      delete Current;
      return 1;
   }
   else
   {
      return 0;
   }
}
 
void book::dob()
{
   clrscr();
   string a,b;
   int j,i;
   cout<<"Vvedite kol-vo elementov ocheredi"<<endl;
   cin>>j;
   for (i=0;i<j;i++){
   if(!First)
   {
      if(!(Last= new ListElement))
      {
         cerr<<"Insufficient memory for element"<<endl;
         return;
      }
      cout<<"Vvedite avtora"<<endl;
      cin>>a;
      cout<<"Vvedite nazvanie knigi"<<endl;
      cin>>b;
      Last->avtor=a;
      Last->name=b;
      First=Last;
      Last->Next=NULL;
   }
   else
   {
      if(!(Current= new ListElement))
      {
         cerr<<"Insufficient memory for element"<<endl;
         return;
      }
      cout<<"Vvedite avtora"<<endl;
      cin>>a;
      cout<<"Vvedite nazvanie knigi"<<endl;
      cin>>b;
      Current->avtor=a;
      Current->name=b;
      Last->Next=Current;
      Last=Current;
      Last->Next=NULL;
   }
  }
 return;
}
 
void book::show()
{
   clrscr();
   Current=First;
   while(Current)
   {
      cout<<Current->avtor<<" ";
      cout<<Current->name<<endl;
      Current=Current->Next;
   }
   getch();
   return;
}
 
void book::poisk(string value)
{
   clrscr();
   string l;
   Current=First;
   int i=0;
   while(Current)
   {
      if (Current->avtor==value)
      {
         cout<<value<<":";
         l=Current->name;
         cout<<l<<endl;
         i++;
      }
      Current=Current->Next;
   }
   if (i==0)
   cout<<"proizvedenii c takim nazvaniem net"<<endl;
   getch();
   return;
}
 
void main(){
char c;
string val;
book BOOK;
while(1){
  clrscr();
  cout<<"1-Dobavlenie"<<endl;
  cout<<"2-Udalenie"<<endl;
  cout<<"3-Pokazat spisok"<<endl;
  cout<<"4-Poisk"<<endl;
  cout<<"5-Exit"<<endl;
  c=cin.get();
 
  switch(c){
  case'1':BOOK.dob();break;
  case'2':BOOK.udal();break;
  case'3':BOOK.show();break;
  case'4':{
       cout<<"Vvedite element poiska"<<endl;
       cin>>val;
       BOOK.poisk(val); break;}
  case'5':exit(0);
  }
 }
}
 
Текущее время: 21:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru