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

Правильно ли реализовано удаление элемента из массива и совершен вызов деструктора? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача "Кто старше?" (подскажите где ошибка в коде) http://www.cyberforum.ru/cpp-beginners/thread1213395.html
Здравствуйте!подскажите где может быть ошибка, на сайте показывает частичное решение, Условие: Программа принимает три числа: возраст Антона, возраст Бориса и возраст Виктора. Определите, кто из...
C++ Реализация алгоритма сжатия JPEG помогите пожалуйста! после завтра диплом уже защищать, а я ни на шаг не могу сдвинуться с этой прогрммой(( нужно написать на С++ алгоритм сжатия изображения JPEG. http://www.cyberforum.ru/cpp-beginners/thread1213376.html
C++ Баг в реализации Хаффмана
Здравствуйте, дорогие форумчане. Тут такой вопрос - алгоритм почему-то "теряет" последнюю букву в тексте, если его размер очень мал. Например, если на вход подается "Raiden", то после сжатия и...
C++ Привести код в рабочее состояние
Здравствуйте! Есть задание в котором нужно ввести информацию о такси (номер, стоимость, вид транспорта) и так же позволяющий удалить указанный номер такси. не дали вот такой код. Как его можно...
C++ Написать программу, которая выводит на экран предложения согласно заданию http://www.cyberforum.ru/cpp-beginners/thread1213345.html
Добрый день . Вот такая вот програмка: Написать программу, которая считывает текст из файла и выводит его на экран, после каждого предложения добавляя, сколько раз встретилось в нем заданная с...
C++ Вывести строку, содержащую символы заданной строки, между которыми вставлено по одному пробелу Что то вот на решал, немного вроде не так посмотрите оцените пожалуйста; /* Дана непустая строка S . Вывести строку, содержащую символы строки , между которыми вставлено по одному пробелу. */... подробнее

Показать сообщение отдельно
Supernatural
301 / 156 / 29
Регистрация: 22.11.2010
Сообщений: 1,543
20.06.2014, 21:09  [ТС]
чуть-чуть недопонимаю, скидываю код. Где и что должно быть написано?
Кликните здесь для просмотра всего текста
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
#include <vcl.h>
#include <iostream.h>
#include <string.h>
#pragma hdrstop
#pragma argsused
using namespace std;
//------------------------------------------------------------------------------
string stemporary;  //ãëîáГ*ëüГ*ûå âðåìåГ*Г*ûå ïåðåìåГ*Г*ûå
int itemporary;
float ftemporary;
float fftemporary;
string com;
int i=0;
//------------------------------------------------------------------------------
class ECM
{
char* type;
float Ghz;
int Memory;
float Gb;
public:
ECM(); //ГЄГ®Г*ñòðóêòîð ГЎГҐГ§ ГЇГ*Г°Г*ìåòðîâ
ECM(char* TYPE,float GHZ,int MEMORY,float GB);//ГЄГ®Г*ñòðóêòîð Г± ГЇГ*Г°Г*ìåòðГ*ìè
ECM(const ECM&); //ГЄГ®Г*ñòðóêòîð êîïèðîâГ*Г*ГЁГї
~ECM();          //äåñòðóêòîð
//------------------------------------------------------------------------------
void settype(char* temp);   //ГґГіГ*êöèè äëÿ êîìГ*Г*äû  Г€Г§Г¬ГҐГ*ГЁГІГј
void setghz(float temp);
void setmemory(int temp);
void setgb(float temp);
void show();
//------------------------------------------------------------------------------
char* gettypecpu();         //ГґГіГ*êöèè äëÿ êîìГ*Г*äû  ГЏГ®ГЄГ*Г§Г*ГІГј
float getghz();
int getmemory();
float getgb();
};
//------------------------------------------------------------------------------
void ECM::settype(char* temp)   //ГіГ±ГІГ*Г*îâèòü ГІГЁГЇ ïðîöåññîðГ*
{
type=temp;
}
//------------------------------------------------------------------------------
void ECM::setghz(float temp)    //ГіГ±ГІГ*Г*îâèòü Г·Г*ñòîòó ïðîöåññîðГ*
{
Ghz=temp;
}
//------------------------------------------------------------------------------
void ECM::setmemory(int temp)   //ГіГ±ГІГ*Г*îâèòü îáúåì ГЇГ*ìÿòè
{
Memory=temp;
}
//------------------------------------------------------------------------------
void ECM::setgb(float temp)     //ГіГ±ГІГ*Г*îâèòü îáúåì Г*Г*êîïèòåëÿ
{
Gb=temp;
}
//------------------------------------------------------------------------------
ECM::~ECM()                     //óäëèòü îáúåêò
{
 
}
//------------------------------------------------------------------------------
ECM::ECM(char* TYPE,float GHZ,int MEMORY,float GB) //ГЄГ®Г*ñòðóêòîð Г± ГЇГ*Г°Г*ìåòðГ*ìè
{
type=TYPE;
Ghz=GHZ;
Memory=MEMORY;
Gb=GB;
}
//------------------------------------------------------------------------------
ECM::ECM(){ //ГЄГ®Г*ñòðóêòîð ГЎГҐГ§ ГЇГ*Г°Г*ìåòðîâ
type=NULL;
Ghz=0;
Memory=0;
Gb=0;
}
//------------------------------------------------------------------------------
ECM::ECM(const ECM &E)   //ГЄГ®Г*ñòðóêòîð êîïèðîâГ*Г*ГЁГї
{
if (E.type) {type= new char [strlen(E.type)+1]; strcpy(type, E.type);}
else type=0;
type=E.type;Ghz=E.Ghz;Memory=E.Memory;Gb=E.Gb;
}                       
//------------------------------------------------------------------------------
char* ECM::gettypecpu() {return type;}
float ECM::getghz() {return Ghz;}
int ECM::getmemory() {return Memory;}
float ECM::getgb() {return Gb;}
void add_element();
void edit_element(int i);
void show_element(int i);
void copy_element(int i);
void delete_element(int i);
void show_all();
//------------------------------------------------------------------------------
ECM *pECM[100];
//------------------------------------------------------------------------------
void add_element() //ïðîöåäóðГ* äîáГ*âëåГ*ГЁГї
{
++i;
cout<<"\nCPU ";cin>>stemporary;
char* ctemporary = new char [stemporary.length()+1];
strcpy(ctemporary,stemporary.c_str());
cout<<"\nGhz ";cin>>ftemporary;
cout<<"\nMemory ";cin>>itemporary;
cout<<"\nGb ";cin>>fftemporary;
pECM[i]= new ECM(ctemporary,ftemporary,itemporary,fftemporary);//Г*îâûé ýëåìåГ*ГІ
}
//------------------------------------------------------------------------------
void edit_element(int i)
{
 
}
//------------------------------------------------------------------------------
void delete_element(int i)  //ГіГ¤Г*ëèòü ýëåìåГ*ГІ
{
pECM[i]->~ECM();
cout<<"\nElement has been deleted";
}
//------------------------------------------------------------------------------
void show_element(int i)   //ïîêГ*Г§Г*ГІГј ýëåìåГ*ГІ
{
cout<<pECM[i]->gettypecpu()<<" "<<pECM[i]->getghz()<<" "<<pECM[i]->getmemory()<<" "<<pECM[i]->getgb();
}
//------------------------------------------------------------------------------
void show_all()            //ïîêГ*Г§Г*ГІГј ГўГҐГ±Гј ñïèñîê
{
for (int k=0;k<i;k++)
cout<<pECM[k]->gettypecpu()<<" "<<pECM[k]->getghz()<<" "<<pECM[k]->getmemory()<<" "<<pECM[k]->getgb();
}
//------------------------------------------------------------------------------
void main()
{
int i;
int temp;
cout<<"Enter command: ";cin>>com;
while (com!="exit")
{
if (com=="add") {add_element();cout<<"\nEnter command: ";cin>>com;} else
if (com=="edit") {cin>>i;edit_element(i);cout<<"\nEnter command: ";cin>>com;} else
if (com=="delete") {cout<<"\nEnter number of record";cin>>temp;delete_element(temp);cout<<"\nEnter command: ";cin>>com;} else
if (com=="show") {cout<<"\nEnter number of record";cin>>temp;show_element(temp);cout<<"\nEnter command: ";cin>>com;} else
if (com=="show all") {show_all;cout<<"\nEnter command: ";cin>>com;} else
if (com=="exit") exit (EXIT_SUCCESS); else
if ((com!="add")||(com!="edit")||(com!="delete")||(com!="show")||(com!="show all")||(com!="exit")) {cout<<"\nEnter command: ";cin>>com;};
}
}
//---------------------------------------------------------------------------
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru