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

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

Войти
Регистрация
Восстановить пароль
 
Jim_Hunter
0 / 0 / 0
Регистрация: 21.05.2016
Сообщений: 17
#1

Реализовать класс "Очередь" - C++

02.10.2016, 18:40. Просмотров 151. Ответов 4
Метки нет (Все метки)

Помогите разобраться

при создании очереди чисел все просто и понятно, к примеру есть поле value туда я помещаю числа и оттуда могу их
их взять:
C++
1
2
3
4
5
6
   
head = new element ;
tail = head;
head->value = x;
head->adr=0;
size = 1;
но вопрос собственно в чем: у меня задание:

Реализуйте класс очереди из предыдущей работы с одним отличием –
элементом очереди теперь будет не int, а указатель на объект типа figure.

Как создать поле в структуре в котором будут размещаться элементы, что бы можно было сделать что то типа head->value = x;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2016, 18:40     Реализовать класс "Очередь"
Посмотрите здесь:

Добавить функцию удаления в класс "Очередь" - C++
Подскажите как реализовать функцию удаления(popQueue)? //queue.h #include <iostream> #include <iomanip> using namespace std; ...

класс Lqueue, структура типа "очередь" - C++
Создать класс Lqueue - структура типа "очередь", что базируется на структуре связного списка. Тип значения, хранящиеся в очереди, выбрать...

Реализовать структуру данных "очередь" - C++
Написать программу, содержащую описание очереди и моделирующую работу очереди, реализовав все указанные здесь методы. Программа считывает...

Простейший класс "Очередь" - C++
Добрый вечер уважаемые друзья... Вот дошел до классов . И первую задачу я не очень понял . Помогите разжевать . Одному очень сложно. Буду...

Шаблоны. Класс "Очередь" - C++
Как исправить ошибку? #include <iostream> using namespace std; template<class T> class Ochered { private: T Massive; ...

класс "очередь параметров" - C++
вот такое задание дали...но запоминаем что сразу делаем с динамической памятью. 1. Разработать класс "очередь параметров" в соответствии...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gru74ik
Модератор
Эксперт CЭксперт С++
4108 / 1753 / 197
Регистрация: 20.02.2013
Сообщений: 4,857
Записей в блоге: 21
02.10.2016, 18:46     Реализовать класс "Очередь" #2
Цитата Сообщение от Jim_Hunter Посмотреть сообщение
из предыдущей работы
Jim_Hunter, какой "предыдущей работы"?
Jim_Hunter
0 / 0 / 0
Регистрация: 21.05.2016
Сообщений: 17
02.10.2016, 18:51  [ТС]     Реализовать класс "Очередь" #3
это не особо важно, там очередь на основе двусвязного списка
rikimaru2013
C++ Game Dev
2419 / 1113 / 240
Регистрация: 30.11.2013
Сообщений: 3,661
02.10.2016, 18:53     Реализовать класс "Очередь" #4
Jim_Hunter, вставьте сюда ваш код, где работает с int и описание структуры figure - и пометьте строчку где у вас что-то не получается.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.10.2016, 18:57     Реализовать класс "Очередь"
Еще ссылки по теме:

Класс "Стационарный телефон", реализовать заданные методы - C++
стационарный телефон свойства: • состояние линии (сигнал присутствует / отсутствует); • состояние трубки (на базе / поднятий); ...

Реализовать класс "Междугороные разговоры" и функцию поиска в нём по указанным параметрам - C++
Здравствуйте.Помогите с заданием.Не пойму,что от меня требуется. 1.Определить объекты и св-ва , определяющие состояние и поведение...

Реализовать класс "Длинных чисел" (найти причины и способы устранения ошибки) - C++
Всем привет:) помогите пожалуйста решить проблему: делаю класс длинных чисел, обязательно нужно использовать конструкторы(по умолчанию, с...

Реализовать класс "Стек" с перегруженными операциями: +, *, =, +=, --, () - C++
Доброго времени суток! Помогите, пожалуйста, сделать: 3.2) Бинарная операция. Создать объект "Стек" с перегруженными операциями: +, *,...

Реализовать пользовательский класс "Список" - C++
Помогите, немогу понять как делать список в ооп на с++, если можно примеры.

Реализовать класс "Шестнадцатиричные числа" - C++
Задание собственно говоря такое: 1. Создать программный класс (или несколько связанных классов) на языке С++, которые реализуют заданные...


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

Или воспользуйтесь поиском по форуму:
Jim_Hunter
0 / 0 / 0
Регистрация: 21.05.2016
Сообщений: 17
02.10.2016, 18:57  [ТС]     Реализовать класс "Очередь" #5
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
#include "que.h"
#include "element.h"
#include <iostream>
using namespace std;
 
 
que::que(int x)
{
 
    head = new element ;
    tail = head;
    head->value = x;
    head->adr=0;
    size = 1;
 
 
}
 
 
que::~que(void)
{
}
 
void que ::push (int value)
{
    size++;
    element *temp = new (element);
    temp->adr=0;
    temp->value = value;
    tail->adr=temp;
 
    tail=temp;
 
 
}
 
void que::pop (int *res)
{
    if (size ==0)
    {
        cout<<"Очередь пуста - удалять нечего!"<<endl;
        return;
    }
 
    element *temp = head;
    *res = head->value;
    head = head->adr;
    delete temp;
    size --;
 
 
}
 
void que::Print()
{
if(size==0)
{
cout << "Queue is empty"<< endl;
return;
}
 
element* e;
e = head;
while(e != 0)
{
    cout << e->value << ", ";
    e = e->adr;
}
cout << endl;
}

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
#include <conio.h>
#include <iostream>
using namespace std;
 
#include <stdlib.h>
#include <crtdbg.h>
 
#include "figure.h"
#include "queue.h"
#include "Rectangles.h"
 
 
void main()
{
    figure *f[3];
    figure * f1,*f2,*f3;
 
    Rectangles * r1,*r2,*r3;
 
    r1 = new Rectangles ();
    r2 = new Rectangles ();
    r3 = new Rectangles ();
 
    r1->a = 1; r1->b = 2;
    r2->a = 5; r2->b = 7;
    r3->a = 15; r3->b = 3;
 
    f1= (figure*)r1; f2= (figure*)r2; f3= (figure*)r3;
 
    f[0] = f1;
    f[1]= f2;
    f[2]= f3;
 
 
 
 
 
    /*queue q;
    q.Put(f1); q.Put(f3);q.Put(f2);
    q.ShowSquares();*/
    
 
    f1->PrintName();
    f2->PrintName();
 
    f1->GetSquare();
    f2->GetSquare();
 
    
    delete f1;
    delete f2;
    delete f3;
 
    _CrtDumpMemoryLeaks();
    _getch();
 
 
}
А не получается реализовать Put (он же Push)
Yandex
Объявления
02.10.2016, 18:57     Реализовать класс "Очередь"
Ответ Создать тему
Опции темы

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