Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
3 / 3 / 0
Регистрация: 10.11.2009
Сообщений: 102

Создать класса «однонаправленный кольцевой список».

09.10.2011, 22:31. Показов 3010. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите пожалуйста, в чем ошибка, так как компилятор ошибку не выдает, одна при запуске вылетает, при отладке вылетает на этой строке
C++
1
*pend =  temp;
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
class Node
    {
        public:
        int d; // Данные
        Node *next; // Указатель на последующий узел
        Node ()
        { // Конструктор
             next = 0; 
        }
    };
 
    class List
    {
        Node *pbeg, *pend; // Указатели на начало 
        public:
        List(){pbeg = 0; pend = 0;} //Конструктор
        ~List(){}; // Деструктор
        void add(int data)// Добавление узла в конец списка
        {
            Node temp(data);
            temp.next = pbeg;
            *pend =  temp;  // НА этом вылетает
        }
        
    };
 
int main()
{
    List element;
    element.add(5);
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.10.2011, 22:31
Ответы с готовыми решениями:

Создать однонаправленный кольцевой список целых чисел
Помогите написать программу (СРОЧНО)!!! Тип списка:Однонаправленный кольцевой Элемент списка: целое Создать список из...

Сформировать однонаправленный кольцевой список
Ребят, выручайте пожайлуста буду очень и очень признателен. Сформировать однонаправленный кольцевой список и провести удвоение буквы...

Кольцевой однонаправленный список, вывод списка на экран
Ввод и вывод списка. Ввод вроде работает, а вывод списка не работает, выводится ошибка в этой строке: cout << pv-> data...

5
 Аватар для talis
794 / 546 / 61
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
09.10.2011, 23:11
temp - автоматический объект. Локальная переменная, по другому. То есть она не существует за пределами метода add. А вы её адрес присваиваете указателю pend.

Добавлено через 1 минуту
Да, и конструкторы лучше делать так:

C++
1
List() : pbeg(0), pend(0) { }
Список инициализации называется.
0
3 / 3 / 0
Регистрация: 10.11.2009
Сообщений: 102
12.10.2011, 00:45  [ТС]
А как тогда правильно исправить?
0
 Аватар для talis
794 / 546 / 61
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
12.10.2011, 00:51
Вам нужно динамическое выделение памяти через new. Соответственно, и освобождение через delete.
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
12.10.2011, 08:12
Цитата Сообщение от talis Посмотреть сообщение
А вы её адрес присваиваете указателю pend.
Проблема в другом. pend = 0 с последующим *pend=temp;.
1
 Аватар для talis
794 / 546 / 61
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
12.10.2011, 10:32
Да, разименовывания не заметил. Однако, всё равно, нужно динамическое выделение памяти.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.10.2011, 10:32
Помогаю со студенческими работами здесь

Используя кольцевой однонаправленный список, реализовать детскую считалку
Всем привет. Есть задача: Используя кольцевой однонаправленный список, реализовать детскую считалку — N ребят расположены по кругу, начав...

Сформировать однонаправленный кольцевой список и провести удвоение буквы "Т" в нем
Сформировать однонаправленный кольцевой список и провести удвоение буквы "Т" в нем (код выдает ошибку"unresolved...

Сформировать однонаправленный кольцевой список и провести удвоение буквы "Т" в нем
Задание: Сформировать однонаправленный кольцевой список и провести удвоение буквы "Т" в нем - C++ (Код выдает ошибку...

Кольцевой двусвязный список шаблон класса ошибки
Код выдаёт некоторые ошибки (прикрепили, на картинке): Что исправить? #include "StdAfx.h" #ifndef __list ...

Создать однонаправленный список, перегрузить операции + [] == >> <<
Создать однонаправленный список с элементами типа char и перегрузить операции , &lt;&lt;, &gt;&gt;, ==, + Дублирование тем запрещено...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru